AngularJS:返回承诺拒绝

3

我正在使用AngularJS创建一个类似于以下代码的工厂

if (href) {
    return $http({ method: method, url: item.href });
}
else {
    // needs to return a failed promise
}

所以,如果条件为真,我需要做的就是调用$http promise,这意味着使用我的工厂的人期望一个 promise。问题是:如果条件为 false,我需要返回一个被拒绝的 promise。有没有办法做到这一点?

谢谢!

1个回答

5
返回被拒绝的承诺对象 $q.reject()
if (href) {
    return $http({ method: method, url: item.href });
}
else {
    return $q.reject();
}

您可以指定拒绝原因,例如:$q.reject('无效的URL')

注意:必须注入 $q - Tom

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接