Abd*_*aly 8 jquery jquery-deferred
我试图理解$.when,我可以看到,当你想要继续之前等待多个延迟时,它会很有用.但是,我不确定我理解使用$.when延迟的用例是什么.为了显示:
var deferred = $.Deferred();
// Is this ever useful?
$.when(deferred).then(...)
// Or can I always do this?
deferred.then(...)
Run Code Online (Sandbox Code Playgroud)
来自$.when [docs]文档:
如果传递单个Deferred,则
jQuery.when该方法将返回其Promise对象(Deferred方法的子集).
所以$.when(deferred).then(...)是一样的deferred.promise().then(...).
promise对象只是延迟对象的有限接口.它允许添加回调,但不允许更改Deferred的状态(解析,拒绝它).
因此,最终使用$.when和.then直接调用延迟对象之间基本没有区别.
我不认为这是有道理通过一个单一的递延对象明确到$.when,因为你没有得到任何好处.但是,可能存在未知数量的延迟对象,这意味着它也可能只有一个.
| 归档时间: |
|
| 查看次数: |
132 次 |
| 最近记录: |