請先檢查我的代碼。
const arr = ['liver', 'heart', 'brain']
const url1 = `www.hospital.com/diseaseName?liver`
const url2 = `www.hospital.com/diseaseName?heart`
const url3 = `www.hospital.com/diseaseName?brain`
const request1 = axios.get(url1)
const request2 = axios.get(url2)
const request3 = axios.get(url3)
const fetchData = () => {
axios.all( [request1, request2, request3] )
.then(axios.spread((...response) => {
const responseOne = response[0].data
const responseTwo = response[1].data
const responseThree = response[2].data
})
}
我要做的是使用arr 的每個元素,制作每個專案的 url,并使用 axios.all 請求
我想我可以使用回圈函式(例如 array.map 或其他方法)來簡化代碼。我需要一些指導。謝謝你。
uj5u.com熱心網友回復:
你可以做這樣的事情。
const URL = 'www.hospital.com/diseaseName';
const arr = ['liver', 'heart', 'brain'];
const requests = arr.map((a) => {
return axios.get(URL '?' a);
});
const fetchData = () => {
axios.all( requests )
.then(axios.spread((...response) => {
const responseOne = response[0].data
const responseTwo = response[1].data
const responseThree = response[2].data
})
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/479060.html
標籤:javascript 反应 循环 axios array.prototype.map
上一篇:將幾個回圈的結果組合在一起
