用chooseMedia试着做了选择图片上传,最后我运行选择图片不管选第几张上传到存储的图片都是同一张,最后发现自己的代码出现了错误,代码中遍历了res.tempFiles,文件路径错误导致
choose(){
const that = this
if(that.data.islog){
wx.chooseMedia({
count: 9,
mediaType: ['image','video'],
sourceType: ['album', 'camera'],
maxDuration: 30,
camera: 'back',
success(res) {
console.log(res.tempFiles)
console.log(res)
if(res.type == "video"){
let src = res.tempFiles[0].tempFilePath.split('tmp/')[1]
console.log(src)
wx.cloud.uploadFile({
cloudPath: 'pyq'+ src ,
filePath: res.tempFiles[0].tempFilePath, // 文件路径
}).then(res => {
that.setData({
videourl:res.fileID
})
console.log(that.data.videourl)
that.setData({
isvideo : true
})
}).catch(error => {
// handle error
})
}else{
res.tempFiles.forEach(function(item){
console.log(item)
const path = item.tempFilePath
let src = item.tempFilePath.split('tmp/')[1]
console.log(src)
wx.cloud.uploadFile({
cloudPath: 'pyq'+ src ,
filePath: path, // 文件路径
}).then(res => {
console.log(res.fileID)
that.data.src.push(res.fileID)
that.setData({
src:that.data.src
})
console.log(that.data.src)
}).catch(error => {
// handle error
})
})
}
}
})
}else{
wx.showToast({
title: '请先登录!',
})
}
}