基本上我有这个控制器:
angular.controller('AddUsersCtrl', function ($scope, UsersService) {
$scope.users = [];
function toggleUser (user) {
user._toggled = !user._toggled;
}
function addAll ()
var users = $scope.users;
UsersService
.addMany(users)
.success(function (response) {
// ...
})
}
});
它是页面的控制器,用户可以一次添加多个用户,并且可以切换每个用户(基本上,切换是视图状态用来切换用户信息的UI状态)
但是如您所见,addAll函数引用范围内的用户,然后从UsersService调用“ addMany”方法。在这一点上,_toggled变量应该以某种方式被过滤掉,因为否则它也会将“ _toggled”发送到后端。
现在,一个简单的解决方案是遍历用户并删除“ _toggled”变量,但是有没有更好的方法或者我的结构是否错误?
您可以为属性使用单独的数组,如下所示:
angular.controller('AddUsersCtrl', function ($scope, UsersService) {
$scope.users = [];
$scope.toggledUsers = {};
function toggleUser (user) {
$scope.toggledUsers[user] = !$scope.toggledUsers[user];
}
function addAll ()
var users = $scope.users;
UsersService
.addMany(users)
.success(function (response) {
// ...
})
}
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句