【问题标题】:Calling jQuery $.Deferred .state() method is launching back done() method调用 jQuery $.Deferred .state() 方法正在启动返回 done() 方法
【发布时间】:2012-04-26 18:50:36
【问题描述】:

我正在对一个应用程序进行一些测试,我意识到在 Deferred 对象上调用 .state() 似乎会一次又一次地启动 .done() 回调。

我在这里生成一个简化的测试用例

http://jsfiddle.net/vaxilart/ajeGm/

我想知道这是正常行为还是我误解了什么。

提前谢谢你!

【问题讨论】:

    标签: jquery ajax jquery-deferred deferred


    【解决方案1】:

    你是 jsfiddle 并没有展示你想要的东西。不是重新执行匿名 IIFE,而是一遍又一遍地重新执行全局范围内的所有代码,包括 resolve()。我认为小提琴的修改版本说明调用 .state() 只会返回状态。

    http://jsfiddle.net/ajeGm/4/

    【讨论】:

    • 嘿,谢谢,你说得对,我应该调用 arguments.callee 而不是 callee.caller...我无法摆脱它。再次感谢
    猜你喜欢
    • 2011-07-06
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 2011-09-06
    • 1970-01-01
    • 2019-01-28
    • 2019-03-12
    • 1970-01-01
    相关资源
    最近更新 更多