deferred對象的方法

(1)$.Deferred()生成一個deferred對象。
  (2)deferred.done()指定操作成功時的回調函數
  (3)deferred.fail()指定操作失敗時的回調函數
  (4)deferred.promise()沒有參數時,作用為保持deferred對象的運行狀態不變;接受參數時,作用為在參數對象上部署deferred接口。
  (5)deferred.resolve()手動改變deferred對象的運行狀態為"已完成",從而立即觸發done()方法。
  (6)$.when()為多個操作指定回調函數。
除了這些方法以外,deferred對象還有三個重要方法,上面的教程中沒有涉及到。
  (7)deferred.then()
有時為了省事,可以把done()和fail()合在一起寫,這就是then()方法。
  $.when($.ajax( "/main.php" ))
  .then(successFunc, failureFunc );
如果then()有兩個參數,那么第一個參數是done()方法的回調函數,第二個參數是fail()方法的回調方法。如果then()只有一個參數,那么等同于done()。
  (8)deferred.reject()
這個方法與deferred.resolve()正好相反,調用后將deferred對象的運行狀態變為"已失敗",從而立即觸發fail()方法。
  (9)deferred.always()
這個方法也是用來指定回調函數的,它的作用是,不管調用的是deferred.resolve()還是deferred.reject(),最后總是執行。
  $.ajax( "test.html" )
  .always( function() { alert("已執行!");} );

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容