经过几篇文章,我已经认识到,在jQuery中有承诺实现.但我不知道是否有任何版本的jQuery是Promise / A兼容.
解决方法
2015年更新:jQuery 3.0是Promises / A兼容.见
this issue on GitHub so 3.0 beta是3.0兼容的,当3.0出来时也是兼容的.在此之前 – 以下仍然适用.
所有jQuery版本(最多3.0)都具有broken promise implementation
它们不允许错误处理,并且不会很好地混合和匹配其他实现.
然而,since version 1.8 .then
exists,这意味着你可以使用jQuery实现作为承诺.这是试图修复this bug并变得更有希望/符合.有an effort to improve interoperability,这是诺言的规范,无论如何,这个努力的目标是2.2和1.12.
这意味着从2.2开始,jQuery承诺将能够与其他承诺图书馆进行互操作,像任何承诺图书馆一样,吸收资源,并根据规格表现得不太正确.
对于所有实际用途,您应该考虑另一个实现.
在那里存在很多良好的承诺.蓝鸟例如是快速(比jQuery承诺快得多),具有低内存占用空间,具有惊人的堆栈跟踪和调试支持,并且与jQuery无缝连接并承诺并吸收它们.