2017-02-06 17 views
0

Я проверяю, как получить все разрешенные данные в $ .when (нуль, promArr)

Я получаю последние данные разрешенные внутри затем. Но мне нужно все решить.

var _promArr = [],_prom = ''; 
     _.each(uniqueAccountList, function(obj,idx){ 
      _prom = getAccountDetails(obj.acctId); 
      _promArr.push(_prom); 
     }); 
     $.when.apply(null, _promArr).then(function(){ 

      ***I need all data passed inside resolve here*** 

     }).always(function() { 
      console.log('all joint promises resolved always'); 
     }); 
function getAccountDetails(accid){ 

    // perform ajaxcall and resolve or reject the promise 

    var _def = $.Deferred(); 

    if (successs) 
    _def.resolve({accid:accid,status:1}) 
    else if (fail.reason == 'Not found') 
    _def.resolve({accid:accid,status:0}) 
    else 
    _def.reject(); 

    return _def 
} 

ответ

0

Мы можем получить все разрешенные данные внутри затем с помощью аргументы

$.when.apply(null, _promArr).then(function(){ 

     ***I need all data passed inside resolve here*** 
var resolvedData = JSON.parse(JSON.stringify(arguments)); 


    }).always(function() { 
     console.log('all joint promises resolved always'); 
    });