Promise 封装多张图片上传 Promise.all的简单使用

Promise 封装多张图片上传

运用场景

多图上传或者类型情况下
1.需要判断图片是否上传成功
2.图片上传顺序问题
3.在 Promise 的中有一个 Promise.all 的方法

部分代码

在这里插入图片描述

Promise.all 传入 promise 对象 数组,当所有的请求 都上传成功后,在 then 中接收到上传成功 或者失败的结果

Promise.all 简介

Promise.all() 批量执行 Promise.all([p1, p2,
p3])用于将多个promise实例,包装成一个新的Promise实例,返回的实例就是普通的promise 它接收一个数组作为参数
数组里可以是Promise对象,也可以是别的值,只有Promise会等待状态改变
当所有的子Promise都完成,该Promise完成,返回值是全部值得数组
有任何一个失败,该Promise失败,返回值是第一个失败的子Promise结果

结语

一个简单的 Promise 使用列子 有错误的地方 大家可以指出

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Vue2 中使用 `Promise.all` 访问多个已经封装的接口可以这样实现: 假设我们有三个已经封装好的接口 `getUserInfo`、`getPostList` 和 `getCommentList`,它们的调用方式类似于: ```javascript getUserInfo() .then(response => { // 处理响应数据 }) .catch(error => { // 处理错误情况 }) getPostList() .then(response => { // 处理响应数据 }) .catch(error => { // 处理错误情况 }) getCommentList() .then(response => { // 处理响应数据 }) .catch(error => { // 处理错误情况 }) ``` 我们可以将这些接口的 Promise 对象放入一个数组中,然后使用 `Promise.all` 执行这些 Promise,等待所有 Promise 都成功完成后,`then` 方法中的回调函数就会被执行,此时的 `responses` 数组包含了所有接口的响应数据。代码如下: ```javascript const promiseArray = [ getUserInfo(), getPostList(), getCommentList() ] Promise.all(promiseArray) .then(responses => { const userInfo = responses[0].data const postList = responses[1].data const commentList = responses[2].data console.log(userInfo, postList, commentList) }) .catch(error => { console.log(error) }) ``` 以上代码中,`promiseArray` 数组里包含了多个已经封装好的接口的 Promise 对象,使用 `Promise.all` 执行这些 Promise,等待所有 Promise 都成功完成后,`then` 方法中的回调函数就会被执行,此时的 `responses` 数组包含了所有接口的响应数据。可以根据需要修改相应的变量名和处理响应数据的代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值