迴圈中呼叫非同步介面獲取資料

2021-10-08 05:00:59 字數 1023 閱讀 2618

整體思路就是:先存陣列,然後迴圈生成每乙個promise,然後用promise.all來呼叫,then的時候返回的是乙個結果陣列。

1、首先定義迴圈裡的非同步請求

getinfo

(item ,index)).

then

(res=>)}

)})}

2、newslist為開始介面獲取的新聞列表,對新聞列表進行迴圈,得到乙個promise陣列。

let promisearr =

this

.newslist.

map(

(item,index)

=>

)

3、用promise.all來調。

promise.

all(promisearr)

.then

(value=>

,// ,

// ]

this

.newslist = value;

})

export

default},

methods:

,,];

let promisearr =

this

.newslist.

map(

(item,index)

=>

) promise.

all(promisearr)

.then

(value=>

,// ,

// ]

this

.newslist = value;})

})},

getinfo

(item ,index)).

then

(res=>)}

)})}

},mounted()

}<

/script>

for迴圈中呼叫axios獲取資料

業務需求,需要從乙個介面中獲取到一組資料,根據資料中的id去調取另乙個介面得到最終的資料。直接在for迴圈中呼叫axios在迴圈外得不到介面的資料 getdata this.api.productionprocess.findbarcode json then res console.log dat...

js 迴圈中的非同步

for var i 0 i 5 i 0 1 2 3 4 加入延時 for var i 0 i 5 i 1000 i 5 立即執行 5 一秒後 5 一秒後 5 一秒後 5 一秒後var output function i 1000 i for var i 0 i 5 i 0 立即執行 1 一秒後 2 ...

js迴圈中呼叫ajax

var i for i 0 i 10 i 在for迴圈中呼叫ajax方法 補充頁面上的資料,這樣寫是錯誤的,他不會每執行一次for迴圈就執行一次ajax方法,而是等for迴圈結束才去執行ajax方法,所以導致ajax只被執行一次。然而當修改如下 for i 0 i 10 i 與上面不同的是在每次呼叫...