如何使用ng-click从数组中删除一个项目或对象?
如何使用ng-click从数组中删除一个项目或对象?
我正在尝试编写一个函数,通过点击按钮可以删除项目,但我认为我对函数感到困惑了 - 我是否应该使用$digest
?
HTML和app.js:
-
- {{bday.name}} | {{bday.date}}
- {{bday.name}} | {{bday.date}}
$scope.remove = function(){ $scope.newBirthday = $scope.$digest(); };
admin 更改状态以发布 2023年5月20日
这是一个正确的答案:
Delete $scope.remove=function($index){ $scope.bdays.splice($index,1); }
在 @charlietfl 的答案中,我认为它是错误的,因为您将 $index
作为参数传递,但在控制器中使用了 wish。如果我错了,请纠正我 🙂
要删除项,您需要从数组中删除它,并可以在标记中将bday
项传递给您的删除函数。然后在控制器中查找项目的索引并从数组中删除
Delete
然后在控制器中:
$scope.remove = function(item) { var index = $scope.bdays.indexOf(item); $scope.bdays.splice(index, 1); }
Angular将自动检测对bdays
数组的更改,并更新ng-repeat
演示: http://plnkr.co/edit/ZdShIA?p=preview
编辑: 如果使用服务器进行实时更新,则可以使用您创建的$resource
服务来管理数组更新,同时更新服务器