如果Jquery延迟解析(false)等于拒绝()?

时间:2016-08-30 14:52:24

标签: jquery

var dfd = JQuery.deferred();

如果dfd.resolve(false)dfd.reject()可以做同样的事情吗?

如果没有。 dfd.resolve(false)是什么意思?

1 个答案:

答案 0 :(得分:0)

dfd.resolve(false)的含义是,它会验证您作为参数传递的输入truefalse,然后进行调用。

<强>解析():

  

deferred.resolve()解析Deferred对象并调用any   带有给定参数的doneCallbacks。

解释:通常,只有Deferred的创建者才能调用此方法;您可以通过deferred.promise()返回受限制的Promise对象来阻止其他代码更改Deferred的状态。

当Deferred 已解决时,将调用deferred.then()或 deferred.done()添加的任何 doneCallbacks 。回调按添加顺序执行。每个回调都从 deferred.resolve()传递args。在Deferred进入已解决的状态后添加的任何 doneCallbacks 会在添加后立即执行,使用传递给 deferred.resolve()的参数打电话。

拒绝()

  

deferred.reject()拒绝Deferred对象并调用任何failCallbacks   与给定的args。

解释:通常,只有Deferred的创建者才能调用此方法;您可以通过deferred.promise()返回受限制的Promise对象来阻止其他代码更改Deferred的状态。

当Deferred 被拒绝时,将调用deferred.then()或 deferred.fail()添加的任何 failCallbacks 。回调按添加顺序执行。每个回调都从 deferred.reject()调用传递args。在延迟进入被拒绝的状态后添加的任何 failCallbacks 会在添加后立即执行,使用传递给 deferred.reject()的参数打电话。

关于JQuery.referred:

  

在大多数情况下,jQuery API调用返回Deferred或   与Promise兼容的对象,例如jQuery.ajax()或jQuery.when(),你   只想使用deferred.then(),deferred.done()和   deferred.fail()方法将回调添加到Deferred的队列中。该   API调用的内部或创建Deferred的代码   在某些方面延迟调用 deferred.resolve() deferred.reject()   点,导致适当的回调运行。

来源:https://api.jquery.com/category/deferred-object/

请注意:

deferred.resolve() - &gt;您的请求已成功

deferred.reject() - &gt;您的请求失败