从本地相册选择图片或使用相机拍照
demo
wx.chooseImage
参数
类型
必填
说明
count
Number
否
最多可以选择的图片张数,默认9
sizeType
StringArray
否
original 原图,compressed 压缩图,默认二者都有
sourceType
StringArray
否
album 从相册选图,camera 使用相机,默认二者都有
success
Function
是
成功则返回图片的本地文件路径列表 tempFilePaths
fail
Function
否
接口调用失败的回调函数
complete
Function
否
接口调用结束的回调函数(调用成功、失败都会执行)
success返回参数说明:
参数
类型
说明
最低版本
tempFilePaths
StringArray
图片的本地文件路径列表
tempFiles
ObjectArray
图片的本地文件列表,每一项是一个 File 对象
1.2.0
wx.chooseImage({
count: 1, // 默认9
sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
success: function (res) {
// 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片
var tempFilePaths = res.tempFilePaths
}
})
批量上传照片代码
调用函数
that.uploadimg({
url: 'url', //这里是你图片上传的接口
path: tempFilePaths, //这里是选取的图片的地址数组
});
uploadimg: function (data) {
// console.log(data)
var arr = [];
var that = this,
i = data.i ? data.i : 0,
success = data.success ? data.success : 0,
fail = data.fail ? data.fail : 0;
if (data.path.length == 0) {
//没有照片
}else {
wx.uploadFile({
url: data.url,
filePath: data.path[i],
name: 'fileData',
formData: null,
success: (resp) => {
// console.log(resp)
success++;
//这里可能有BUG,失败也会执行这里
},
fail: (res) => {
fail++;
// console.log('fail:' + i + "fail:" + fail);
},
complete: () => {
// console.log(i);
i++;
if (i == data.path.length) { //当图片传完时,停止调用
// console.log('执行完毕');
// console.log(that.data.arr)
// console.log('成功:' + success + " 失败:" + fail);
} else {//若图片还没有传完,则继续调用函数
// console.log(i);
data.i = i;
data.success = success;
data.fail = fail;
that.uploadimg(data);//继续执行
}
}
})
}
}