Angular — удалить строку после фильтрации таблицы

У меня есть таблица с filter вроде:

ng-repeat="person in filtered = ( data | filter:query | filter : name | filter {m_resource: resourceFilter} | filter : {m_id : idFilter} | limitTo:maxRowSize )"

И внутри таблицы как часть каждой строки у меня есть кнопка delete:

<button class ="btn" ng-click="removeRow($data, $index, this)">del</button>

при нажатии на button я хочу, чтобы row был удален из UI, без использования какого-либо фильтра я просто использую splice:

$scope.data.splice(index, 1);

Но когда я применяю фильтр, он не будет работать, потому что index (номер строки в отображаемой таблице) - это UI index, а не data index. Кто-нибудь знает, как удалить row после фильтрации?


person Itsik Mauyhas    schedule 29.06.2016    source источник


Ответы (1)


Попробуй это,

<button class ="btn" ng-click="removeRow(person)">del</button>

В вашей функции removeRow

var index = $scope.data.indexOf(person);
$scope.data.splice(index, 1);
person user1111    schedule 29.06.2016
comment
Пробуем и отписываем результат. - person Itsik Mauyhas; 30.06.2016