uni-app微信小程序从相册或相机选择图片
export function wx_chooseImage(count,sizeType,sourceType){
return new Promise((resolve, reject) => {
uni.chooseImage({
count: count?count:1,
sizeType: sizeType?sizeType:['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: sourceType?sourceType:['album', 'camera'],
success: function(res) {
const promises = res.tempFiles.map(file => {
return new Promise((resolve, reject) => {
uni.uploadFile({
url: process.env.VUE_APP_BASE_URL +"/file/add_file",
filePath: file.tempFilePath,
name: "file",
header: {
'system-type': 3,
'Authorization': uni.getStorageSync('token') ? uni.getStorageSync('token') : ''
},
formData: {content_type: 5},
success(uploadFileRes) {
if (uploadFileRes.statusCode == 200) {
let data_ = JSON.parse(uploadFileRes.data)
data_.data.file_name = file.name;
// 将请求成功的结果返回
resolve(data_.data)
} else {
uni.showToast({
title: uploadFileRes.data.msg,
icon: 'none'
})
}
},
fail: (err) => {
reject(err);
}
})
})
})
// prmose.all等待所有上传请求都完成时才返回
Promise.all(promises).then(results => {
resolve(results);
}).catch(error => {
return null;
reject(error);
})
},
fail: (err) => {
reject(err);
}
})
})
}