Я пытаюсь решить обещание от angular $resource сохранить.Угловой ресурс Сохранить обещание
Документов указать, что я могу получить доступ к необработанному $ HTTP обещания через свойство $ посыла на возвращается объект следующим образом:
var User = $resource('/user/:userId', {userId:'@id'});
User.get({userId:123})
.$promise.then(function(user) {
$scope.user = user;
});
Это работает для ГЕШЬ, однако, когда я пытаюсь получить доступ к обещанию при сохранении я получаю сообщение об ошибке. Что я делаю неправильно и почему разрешение проблемы сохранения работает иначе, чем разрешение на получение?
Примечание: запрос POST работает, и я вижу верный ответ, возвращаемый с сервера в сетевом инструменте браузера. Я просто не могу получить доступ к результатам в обещании.
В Моя_служба
var itemResource = $resource('/api/myUrl/:id/:action', { id: '@id', action: '@action' });
function getItem(id) {
return itemResource.get({ id: id });
}
function saveItem(item) {
return itemResource.save(item);
}
In My Controller
var getResult = itemService.getItem({ id: 1560 });
getResult.$promise.then(function (itemDef) { // THIS WORKS!!!
console.log(itemDef);
});
var saveResult = itemService.saveItem(item);
saveResult.$promise.then(function (itemDef) { // Cannot read property 'then' of undefined
console.log(itemDef);
});
Вы можете создать демо ? – dfsq
какая угловая версия вы используете? – Grundy
AngularJS v1.4.0 –