0
Я использую следующие, вызывает функцию entityService.postEntity:
entityService.postEntity($scope.entityType, formData)
.then(function (result) {
$scope.grid.data.push(result);
}, function (result) {
alert("Error: " + result);
})
Вот мой объект ресурса и функции postEntity:
var EntityResource = $resource('/api/:entityType', {}, {
postEntity: { url: '/api/:entityType/', method: 'POST' },
});
postEntity: function (entityType, entity) {
var deferred = $q.defer();
EntityResource.postEntity({ entityType: entityType }, entity,
function (resp) {
deferred.resolve(resp);
}, function (resp) {
deferred.reject(resp.data.exceptionMessage);
});
return deferred.promise;
},
Вышеуказанные работы для меня.
Теперь я попытался заменить это:
var entityResource = $resource('/api/' + $scope.entityType + '/');
entityResource.save({}, formData)
.success(function (data, status, headers, config) {
var a = data;
})
.error(function (data, status, headers, config) {
var b = data;
});
Это дает мне ошибку:
Object #<b> has no method 'success'
Может кто-то дать мне советы о том, что я могу делать неправильно.
Спасибо. Я попробовал это, но, похоже, он не пошел в. $. Я поставил точку останова на все, и он полностью ее пропустил. Правильно ли это с $ до этого? Также должен ли я использовать .save ((), formData), где formData - это мой объект? – Melina
Извините, я дал вам неправильную информацию. Я редактировал мой код выше. Теперь он должен работать. Ваш вызов сохранения возвращает обещание, которое при разрешении должно пройти через блоки $ then. – MBielski