uni-app plus.io.chooseFile多选文件配置无效最多只能选一个

uni-app plus.io.chooseFile多选文件配置无效最多只能选一个

信息类别 详细信息
产品分类 uniapp/App
PC开发环境 Windows
PC版本号 window11
HBuilderX类型 正式
HBuilderX版本号 4.75
手机系统 Android
手机版本号 Android 13
手机厂商 荣耀
手机机型 MAG-AN00
页面类型 vue
vue版本 vue2
打包方式 云端
项目创建方式 HBuilderX

示例代码:

plus.io.chooseFile({  
    title: '选择文件',  
    multiple: true,  
    maximum: 10,  
    system: false,  
}, (event) => {   
});

操作步骤:

plus.io.chooseFile({  
    title: '选择文件',  
    multiple: true,  
    maximum: 10,  
    system: false,  
}, (event) => {   
});

预期结果:

  • maximum设了10,希望能最多选10个文件

实际结果:

  • 只能选一个

bug描述:

两个问题:

  1. plus.io.chooseFile设置多选文件无效,最多只能选一个文件;
  2. https://www.html5plus.org/doc/zh_cn/io.html,这里没有plus.io.chooseFile的api说明。

Image


更多关于uni-app plus.io.chooseFile多选文件配置无效最多只能选一个的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

这个API对应的都是系统界面,是否支持多选依赖系统支持。你可以长按试一下能不能触发多选。

更多关于uni-app plus.io.chooseFile多选文件配置无效最多只能选一个的实战教程也可以访问 https://www.itying.com/category-93-b0.html


那玩意不好使,用Intent选择文件吧 这个可以规定多选

在 uni-app 的 App 端,plus.io.chooseFile 确实存在多选配置无效的问题。这是由于 Android 系统原生文件选择器的限制,部分厂商设备(如荣耀)默认仅支持单选,即使设置了 multiple: truemaximum: 10 参数也无法生效。

解决方案:

  1. 改用 uni.chooseFile API,这是 uni-app 官方封装的方法,对多选支持更完善:
uni.chooseFile({
  count: 10, // 最大选择数量
  success: (res) => {
    console.log(res.tempFiles);
  }
});
  1. 若仍需使用 plus.io.chooseFile,可尝试添加 mimeType 参数指定文件类型,但多选支持仍取决于设备系统:
plus.io.chooseFile({
  title: '选择文件',
  multiple: true,
  maximum: 10,
  mimeType: "image/*", // 指定文件类型
  system: false
}, (event) => { });
回到顶部