我有一组项目绑定到AngularJS<li>
中的元素。<ul>
我希望能够单击每个旁边的“删除项目”并删除该项目。
StackOverflow 上的这个答案让我们能够做到这一点,但是因为要从中删除元素的数组的名称是硬编码的,所以它不能跨列表使用。
您可以在此处看到有关JSfiddle 设置的示例,如果您尝试单击游戏旁边的“删除”,则会删除学生,而不是游戏。
从按钮传this
回让我可以访问 Angular $scope,但我不知道如何从父数组中干净地删除该项目。
我可以定义按钮ng-click="remove('games',this)"
并使函数看起来像这样:
$scope.remove = function (arrayName, scope) {
scope.$parent[arrayName].splice(scope.$index,1);
}
(就像这个 JSFiddle 一样)但是当我在里面命名父数组时,当我在一年内编辑我的代码时,它似乎是一种破坏功能的好方法。
有任何想法吗?