1. 程式人生 > >promise.all()取多個數據

promise.all()取多個數據

getLatestJob(context){
      const result1=api.getJobJsonFromShield(context)
        .then(response => {
          return response.json();
        });
      const result2=api.getJobJson(context)
        .then(response => {
          return response.json();
        });

      Promise.all([result1, result2])
        .then(([shieldData, nbuData])=>{
          context.commit('mergeList',{"shield":shieldData,"nbuData":nbuData})

        });
    }

兩個result已經取回資料了 response.json()也是promise物件
所以進來之後是先依次執行result1 result2 然後再promise.all

Promise.all可以將多個Promise例項包裝成一個新的Promise例項。同時,成功和失敗的返回值是不同的,成功的時候返回的是一個結果陣列,而失敗的時候則返回最先被reject失敗狀態的值。