我是新来的角和承诺的一般想法,所以请与我在这一个承担。对承诺的角度错误处理
我有如下承诺这个一般设置:
ApiService.getDataUriForUrl(imageUrl).then(function(url){
requests--;
}, function(error){
console.log('oh no!');
});
我写了这个想法了function(error)
会赶上扔到getDataUriForUrl()
通话异常,但我现在带领相信这是处理错误在then(...
区域。
我应该如何格式化它来拦截错误? (捕获getDataUriForUrl()调用中引发的异常)。
你的语法是正确的,但要清楚它不会赶上getDataUriForUrl例外,它反而抓住故障。这意味着你必须显式调用getDataUriForUrl中的$ q.reject。 因此,请考虑作为.resolve和.reject处理程序的promise和success中的成功和失败。服务或API的创建者必须调用这些函数。 编辑:一个简单的解决将是赶服务中的错误和简单的调用$ q.reject –
好吧,非常感谢你,帮我解决这个问题。 – Hoser