从本地相册选择图片或使用相机拍照
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);//继续执行
}
}
})
}
}