在angularjs orderby中使用splice的奇怪行为

时间:2014-04-03 04:37:57

标签: javascript angularjs

以下是演示Plunker Link

自从我开始使用orderby(第24行)以来,我遇到了问题。在我的应用程序中,尝试添加没有优先级的项目然后添加另一个优先级,然后删除该项目,您可以看到已删除的项目出错。

我已经将$ index传递给了函数,我不知道如何解决这个问题。

2 个答案:

答案 0 :(得分:1)

我真的不知道$index是如何工作的,但你可以逐项删除,而不是index

HTML:

<!-- Now, the deleteTask($index) changed to deleteTask(task) -->
<button  ng-click="deleteTask(task)">
    <span class="deleteTaskBtn">delete</span>
</button>

JavaScript:

$scope.deleteTask = function(i){
    var index = $scope.tasks.indexOf(i);
    $scope.tasks.splice(index,1);
}

答案 1 :(得分:0)

我认为orderBy仅适用于数组。 你可以在这里查看 http://docs.angularjs.org/api/ng/filter/orderBy