小程序 如何将返回来多条数据转为数组?并且setData
小程序
上传多张图片完成后,返回来多条图片真实路径数据,我将它们用JSON.parse转换好了之后。。。。就开始懵了,不懂怎么把它们全部都再转为数组。。。本人基础很差,被赶鸭子上架
请问各位大佬如何将多条返回来的数据转为数组。。。。
uploadBtn: function() {
let that = this
wx.chooseImage({
count: 9,
sizeType: ['original', 'compressed'],
sourceType: ['album', 'camera'],
success(res) {
that.setData({
uploadlist: res.tempFilePaths
})
let tempFilePaths = res.tempFilePaths
for (var i = 0; i < tempFilePaths.length; i++) {
wx.uploadFile({
url: app.globalData.api + 'Justice/upload' + app.globalData.key,
filePath: tempFilePaths[i],
name: 'file',
header: {
'content-type': 'multipart/form-data'
},
formData: {
token: wx.getStorageSync('token'),
village_id: wx.getStorageSync('village_id'),
gov_id: wx.getStorageSync('gov_id'),
},
success(res) {
let returnPATH = res.data
console.log(JSON.parse(returnPATH))
}
})
}
}
})
},
下面是两张是转换前和转后返回的数据
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
最简单粗暴的方法:
声明一个空数组变量,比如
let imgArray = []
,然后每返回一条数据就把url提出来,用push()
方法添加进数组,然后可能还需要再赋值给一个全局变量,方便你后面使用。这样不就成为一个数组了吗。。。。
如果是需要等待所有数据上传完成后,获取包含全部数据的数组,可使用promise:
全局定义一个set结构,监听单个图片上传完成事件后,判断set.has(url), 没有的话add到set中,最后set 转数组。
let set = new Set();
if(!set.has(url)){
}
let array = [];
if(set.size == imgs.length){
}