ng-禁用函数调用在 ng-repeat 下处于无限循环中
ng-disabled function call is going in infinite loop under ng-repeat
>我正在使用ng-repeat从集合中填充一个表,在此我有一个复选框,我想禁用该复选框是某些条件返回true。但是,当我加载页面时,我的函数处于无限循环中。
这是我的 html:
<tr ng-repeat="s in seriesList track by $index">
<td><input id="id{{$index+1}}" class="checkbox-custom" type="checkbox" ng-disabled="checkNumbersExitsForSeries(s.series_name)" ng-model="s.selected" ng-click="tickCheck(s, s.selected)">
<label for="id{{$index+1}}" class="checkbox-custom-label"> </label>
</td>
<td class="mailbox-name" style="width:350px;">{{s.series_name}}</td>
<td><input type="button" ng-click="editSeries(s)" value="Edit" name="edit" class="btn btn-info" /></td>
</tr>
以下是角度控制器中的my函数"checkNumbersExitsForSeries":
$scope.checkNumbersExitsForSeries= function(series_name){
console.log("in");
var params = {
'seriesName': series_name
};
$http.post('/admin/checkNumbersExistsForSeries', params, options)
.then(function successCallback(response){
if(response.data.success)
{
console.log("response");
return true;
}
else{
console.log("no response");
return false;
}
},function errorCallback(response){
if(response.status = '401')
$window.location = "#/login"
});
};
下面的代码是我的节点控制器:
exports.checkNumbersExistsForSeries = function(req, res)
{
numberRegisterModel.find({series:req.body.seriesName, status:{$ne:'deleted'}}, function(err, data){
if(data){
console.log("got it");
res.json({success:true, data1:data});
}
else{
console.log("not got it");
console.log("error :" + err);
}
});
}
切勿将指令绑定到执行资源调用的函数。摘要周期频繁运行,这将导致应用程序发出大量请求。
您的checkNumbersExitsForSeries()
函数正是这样做的。解决方案是在从后端加载seriesList
时对其进行迭代,然后为每个条目调用checkNumbersExitsForSeries()
(甚至使其成为批处理调用),并将结果存储在由seriesList
中的项键入的哈希中。
相关文章:
- angularjs ng if中的无限循环
- angularjs ng repeat不会在模态框中循环
- ng-禁用函数调用在 ng-repeat 下处于无限循环中
- 使用 ng-if 选择 ng-repeat 循环中的第二个项目
- Angular 中的无限循环使用 ng-bind
- ng-repeat中的函数不断循环
- 我的ng视图与index.html页面angularjs无限循环
- AngularJS具有ng视图的无限循环
- 为什么ng-bind-html进入无限循环
- Angularjs不能循环使用ng-repeat if key有冒号":"
- 通过$scope访问函数中的ng-resource会导致无限循环
- 如何使用angularJS的ng-repeat在循环中显示bootstrap的折叠面板
- 在ng-repeat循环中,Ng-change递增和递减值
- 在ng-repeat循环和双向数据绑定之外访问ng-repeat的子作用域
- 在Angular中将父作用域的值传递给ng-repeat循环
- Angular.js ng-repeat +无限滚动导致太多观察者
- AngularJS ng repeat:在循环内动态渲染/绑定画布
- 如何在基于数据库数据的ng-repeat循环中使Kendo-UI Editor只读
- 我能在ng-repeat循环中避免对象变量名吗?
- AngularJS的ng-repeat不会循环遍历数组