AngularJS ngResource удалить событие
Я стараюсь обновлять список ресурсов, когда пользователь взаимодействует с ним. Используя AngularJS ngResource, я сначала получаю список, используя его query
метод. Каждый ресурс имеет $remove
(или же $delete
) метод, верно? Но при запуске ресурс не удаляется из списка, возвращенного из query
,
Это требует много, я знаю, но я почти надеялся, что это сделает все для меня. Сохрани это, как я мог это сделать. Создает ли сам ресурс какое-то событие? Есть ли у меня удаленное свойство, которое я могу $watch
? Как бы я узнал, что ресурс был $remove
так что я могу склеить его из списка?
Благодарю.
2 ответа
Вы должны использовать Array
"s splice
способ его удалить ($index
является неявным индексом ng-repeat).
$scope.removeItem = function (index) {
$scope.items[index].$delete();
$scope.items.splice(index, 1);
}
И тогда в вашем HTML
<a ng-click="removeItem($index)">remove me</a>
Просто используйте функцию обратного вызова успеха:
instance.$action([parameters], [success], [error])
Я думаю, для вас это будет что-то вроде:
myResource.$delete([parameters], function () {
//delete was successful
});