vue2 使用promise.all 访问多个接口
时间: 2024-05-17 13:18:22 浏览: 105
在 Vue2 中使用 `Promise.all` 访问多个接口可以这样实现:
```javascript
// 定义多个接口地址
const apiUrls = [
'http://api.domain.com/user',
'http://api.domain.com/post',
'http://api.domain.com/comment'
]
// 定义 Promise 数组
const promiseArray = apiUrls.map(url => {
return axios.get(url)
})
// 使用 Promise.all 执行多个接口请求
Promise.all(promiseArray)
.then(responses => {
// responses 是一个数组,包含了多个接口的响应数据
const userData = responses[0].data
const postData = responses[1].data
const commentData = responses[2].data
console.log(userData, postData, commentData)
})
.catch(error => {
console.log(error)
})
```
以上代码中,`apiUrls` 数组里包含了多个接口地址,使用 `map` 方法将它们转换为 Promise 数组,然后使用 `Promise.all` 执行这些 Promise,等待所有 Promise 都成功完成后,`then` 方法中的回调函数就会被执行,此时的 `responses` 数组包含了所有接口的响应数据。
阅读全文