【发布时间】:2012-08-08 18:01:06
【问题描述】:
我的代码看起来有点像这样(当然不那么荒谬):
var d = $.Deferred();
d.pipe(function() {
throw "a";
}).then(function() {
console.log("good!");
}, function(e) {
console.log("I want the exception here");
});
d.resolve();
问题是在.pipedoneFilter 中抛出异常似乎不会让jQuery 将其视为失败,它会导致doneFilter 中未捕获的异常。
另一种方法是创建一个新的 deferred 并在 doneFilter 周围抛出一个 try-catch 块,但我想知道是否有更好的方法来解决它。
【问题讨论】:
-
我很困惑,因为您的示例没有使用
.pipe()或doneFilter,然后您继续谈论\-:
标签: javascript jquery exception jquery-deferred