chooseFile:fail 文件选择器对话框只能在用户激活时显示

复现:选择文件上传在本地的时候都好使,但是通过hbuilderx打包上测试环境之后,ios端会出现这种问题


chooseFile:fail

原选取文件上传方法 例子

 // 上传文件的测试
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(() => {}) 
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容