【发布时间】:2011-02-23 21:30:59
【问题描述】:
当Deferred 对象是rejected 时,似乎then() 回调没有触发。我的理解是 then() 无论Deferred 解决还是拒绝都应该执行。
这是一个例子 (open in a jsFiddle console)
var doDfd = function(input){
var dfd = $.Deferred();
if(input == 'fail'){
dfd.reject();
}
else{
dfd.resolve();
}
return dfd.promise();
}
doDfd('fail')
.done(function(r){console.log('success')})
.fail(function(r){console.log('fail')})
.then(function(r){console.log('then logic')});
【问题讨论】:
标签: javascript jquery jquery-deferred