2013-12-20 2 views
2

ng-table을 사용하여 항목을 정렬하거나 필터링 할 때 $ index가 업데이트되지 않습니다. 4 개의 항목을 ng-click에서 deleteRow ($ Index)로 정렬 한 경우 $ 인덱스는 0에서 3이됩니다. 이제 DESC를 정렬하면 첫 번째 행에는 여전히 $ index = 3, 이벤트가 있습니다. 0. 첫 번째 행을 삭제하려고하면 $ 인덱스가 3으로 설정되어 있기 때문에 마지막 행을 삭제합니다. 필터링 된 행을 삭제하려고해도 똑같은 일이 발생합니다. http://plnkr.co/edit/WCeBGm49F1QnvfUrHWG6?p=preview

+0

당신이 몇 가지 코드를 보여줄 수 있습니까? – Blackhole

+0

좋은 이야기지만 코드는 어디에 있습니까? –

답변

4

당신이 orderByng-repeat를 사용하는 경우이 항목을 삭제 this post에서 접근을 시도 :

여기 데모입니다.

세력은 다음과 같습니다

HTML : 컨트롤러에서

.... 
<tr ng-repeat="user in users | orderBy:'name':true"> 
    <td data-title="'Name'"> 
     <span ng-bind="user.name"></span> 
     <button ng-click="remove(user)"></td> 
</tr> 
... 

가 :

$scope.remove = function(user){ 
    $scope.users.splice($scope.users.indexOf(user), 1); 
}