У меня есть $scope.inventories
, который содержит запасы, которые я могу выбрать. Я хочу удалить выбранный элемент из inventories
, когда что-то выбрано, но этого не происходит.Элемент не удаляется из коллекции с .splice (index, 1)
Вот код:
$scope.select = (inventory, index) ->
url = '/tasks/select_inventory'
inventory_id = inventory.id
$http(
method: 'POST'
url: url
params: { task_id: task_id, inventory_id: inventory_id }
).success((data, status) ->
$scope.selected_inventories.push inventory
$scope.inventories.splice(index, 1)
return true
).error (data, status) ->
alert('failed')
return
Модель инвентаризации
angular.module('orwapp').factory 'Inventory', ['$resource', ($resource) ->
Inventory = $resource "/api/v1/inventories/:id",
{ id: "@id" }
return Inventory
]
В API Rails возвращает @task
в формате JSON. Это нормально? render json: @task
Почему не $scope.inventories.splice(index, 1)
Работает должным образом?
Насколько я могу судить, этот код _should_ работа. Вы используете $ scope.apply() правильно обновить что вы видите, если вы 'console.log ($ scope.inventories)' сразу после вас? .splice' it? –
@ DanielMa, это sais: [Ресурс, Ресурс, Ресурс, Ресурс, $ обещают: Обещают, $ resolved: true] 0: Resource1: Resource2: Resource3: Resource $ prom: Promise $ resolved: truelength: 4__proto__: Array [0] – martins
Является ли $ scope.inventories массивом или ключом? –