Следующий фрагмент кода возвращает следующее сообщение об ошибке: TypeError: object is not a function
service.deleteItem = function(itemId) {
var def = $q.defer();
$http.delete(SERVER_REST_PATH + '/items/' + itemId)
.success(function() {
def.resolve();
}).error(function(data, status) {
def.reject("Error deleting the item");
});
return def.promise();
};
Если я переписать его как следующие его работы:
service.deleteItem = function(itemId) {
return $http.delete(SERVER_REST_PATH + '/items/' + itemId);
};
Все остальные $ http-методы, которые я использую (т.е. GET, PUT, POST) в моем приложении, обертываются с помощью $ q одинаково, и у них нет этой проблемы. Эта проблема вызывает только DELETE. Когда я его отлаживаю, он просто пропускает методы успеха $ http(), error() и then(). Я использую угловую версию 1.3.13.
Как использовать 'service.deleteProfile'? Разделите код, где вы называете эту функцию. –