复现:选择文件上传在本地的时候都好使,但是通过hbuilderx打包上测试环境之后,ios端会出现这种问题
原选取文件上传方法 例子
// 上传文件的测试
async uploadFile() {
const token = await get(getTokenApi, {})
uni.chooseFile({
count: 1,
extension: ['.zip', '.pdf', '.doc', '.docx', '.xls', '.xlsx'],
success: function (res) {
console.log('chooseFile', res)
// 上传文件接口,带着token
},
fail: function (res) {
console.log('chooseFile', res)
}
});
}
我项目中产生的原因:是 async 把 success: function (res) {} 函数影响了,在使用uni.chooseFile的时候,注意,不要在方法中使用 async
改造后的选取文件上传方法
// 上传文件的测试
uploadFile() {
get(getTokenApi, {}).then((token) => {
uni.chooseFile({
count: 1,
extension: ['.zip', '.pdf', '.doc', '.docx', '.xls', '.xlsx'],
success: (res) => {
console.log('chooseFile', res)
// 上传文件接口,带着token
},
fail: (res) => {
console.log('chooseFile', res)
}
});
}).catch(() => {})
}