html52.com
我爱小程序-开发者交流社区

关于使用云储存上传文件wx.cloud.uploadFile(),成功后返回的fileID顺序错误

框架类型 问题类型 终端类型 AppID 环境ID 基础库版本
小程序 Bug 微信安卓客户端 wx3cbd60d95940d2dd test-01-nkmqa 2.9.2

我的需求:用户选择相册的图片上传,成功后按照当初选择的顺序进行展示;

用户选择图片顺序如下图(从左至右):第一张为宾利汽车

用户选择图片顺序如下图(从左至右):第一张为宾利汽车代码如图,用户通过按钮点击触发upImage( )函数

代码如图,用户通过按钮点击触发upImage( )函数

代码如图,用户通过按钮点击触发upImage( )函数然后我通过打印出来的信息,发现这个云储存返回的图片顺序不对。使用for循环依次上传图片,第一次返回的fileID应该是宾利汽车的fileID

然后我通过打印出来的信息,发现这个云储存返回的图片顺序不对。使用for循环依次上传图片,第一次返回的fileID应该是宾利汽车的fileID才对

结果我到云储存一看,发现云储存返回的第一个fileID是那张女孩图片;可女孩的图片不是还没有上传吗?

经过我多次测试,发现云储存返回的fileID不会按照你传入的图片数组顺序,而是按照图片的体积大小顺序进行返回。

不知道是不是个Bug,希望官方能尽快帮助给我一个解决方案,谢谢!

不知道是不是个Bug,希望官方能尽快帮助给我一个解决方案,谢谢!代码片段upImage() {//通过按钮点击触发此函数 			let upFile_ID = []//储存上传云储存成功后返回的fileI

网友回复

Admin²⁰²⁰:

谢邀:

这个典型的异步问题哈。

是谁先上传完成谁先分配id的原则

维她命系:

异步执行没有顺序,和图片大小有关,越大传的越慢,如果需要顺序处理,应该在 wx.cloud.uploadFile 回调里面触发下一个图片上传。

軍亜~:

建议了解下 Promise.all

Garin:

可能是个Bug?

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付