首页 > 解决方案 > jQuery - 延迟和承诺

问题描述

我对 deferred 和 promises 有点陌生,我得到的代码如下:

  function validateAndSave(){
     var def = $.Deferred();
     validateAPIcall.done(function (errorCount) {
          if(errorCount > 0)
             def.reject(errorCount);
          else {
             //do something
             def.resolve();
          }
     });
    return def.promise();
  }


  function sth(){
     validateAndSave().done(function () {
         loadUI(0);
     }).fail(function (errorCount){
         loadUI(errorCount);
     });
  }

试图了解我们是否可以将 validateAndSave().done() 和 validateAndSave().fail() 部分合并为一个,或者是否有任何函数可以同时处理/执行 def.reject 和 def.resolve?

标签: javascriptjquerypromisejquery-deferred

解决方案


推荐阅读