我无法找到类似的问题(希望我是对的)所以我决定问一下
我有很多来自我自己服务的延迟承诺方法,类似这样
function GetSomething(id) {
var deferred = $q.defer();
$http.get(url + "/" + id)
.success(function (response) {
deferred.resolve(response);
})
.error(function (err, status) {
// I wish I won't need to do something like this
if (status === 404)
deferred.reject("Not Found");
else
deferred.reject(err);
});
return deferred.promise;
}
当我打电话给我时,我会这样做
myService.getSomething(id).then (
function(response) {
// normal
},
function(err, status) {
// HERE no more additional input parameter
}
}
所以,我的问题是,如果我使用延期保证,我怎么能用所有附加参数拒绝它,例如" status",所以我不必手动构建&# 34;原因"对于拒绝方法
我不认为这很重要,实际上当我打字时,我觉得它可能很好,所以我的服务将处理404并重定向到特定页面遇到这样的状态。最初我正在考虑使我的所有服务变得愚蠢,这只是在没有任何UI逻辑的情况下返回承诺