我使用 wx.chooseImage来选择图片后要进行压缩与上传的操作,但后续的操作没有启动,结果发现本地与真机测试可以使用,体验与线上版本无效。
// 选择照片
async chooseWxImage(type) {
wx.chooseImage({
count: 1,
sizeType: ['compressed'],
sourceType: [type],
// 一下代码没有启动似的
success: res => {
this.operationImg(res);
},
fail: ree => {
wx.showToast({
title: '选择图片错误',
icon: 'none',
duration: 2000
})
}
})
}
我一直以为是wx.chooseImage 的错误,但到最后终于找到错误点在那了在后续的操作上传中。wx.uploadFile需要配置合法域名,但我只配置了request合法域名这两个方法是不同的。
/**
* 上传文件-返回文件路径
* @param {"图片"} pathList
* @param {"成功函数"} callback
* @param {"失败函数"} errFun
*/
uploadFile(pathList,callback, errFun) {
let token = wx.getStorageSync("token");
let url = this.globalData.api+'/oss/file/upload';
wx.uploadFile({
url: url,
filePath: pathList,
name: 'file',
header: {
'Accept': 'application/json',
'token': token
},
success: res => {
callback(res);
},
fail: err => {
errFun(err);
},
});
},
小程序域名配置,我的也就是后端域名。
之后可以在本地测试,在详情-》本地设置-》不校验合法域名、web-view (业务域名) 、TLS版本以及HTTPS证书 取消勾选。这样就可以在本地测试了。但域名有缓存所以要等上5-10分钟左右,然后再把微信开发工具重启就可以了