框架类型 | 问题类型 | 终端类型 | AppID | 环境ID | 基础库版本 |
---|---|---|---|---|---|
小程序 | Bug | 微信安卓客户端 | wx3cbd60d95940d2dd | test-01-nkmqa | 2.9.2 |
我的需求:用户选择相册的图片上传,成功后按照当初选择的顺序进行展示;
用户选择图片顺序如下图(从左至右):第一张为宾利汽车
代码如图,用户通过按钮点击触发upImage( )函数
然后我通过打印出来的信息,发现这个云储存返回的图片顺序不对。使用for循环依次上传图片,第一次返回的fileID应该是宾利汽车的fileID才对
结果我到云储存一看,发现云储存返回的第一个fileID是那张女孩图片;可女孩的图片不是还没有上传吗?
经过我多次测试,发现云储存返回的fileID不会按照你传入的图片数组顺序,而是按照图片的体积大小顺序进行返回。
不知道是不是个Bug,希望官方能尽快帮助给我一个解决方案,谢谢!
网友回复
Admin²⁰²⁰:
谢邀:
这个典型的异步问题哈。
是谁先上传完成谁先分配id的原则
维她命系:
异步执行没有顺序,和图片大小有关,越大传的越慢,如果需要顺序处理,应该在 wx.cloud.uploadFile 回调里面触发下一个图片上传。
軍亜~:
建议了解下 Promise.all
Garin:
可能是个Bug?