更新记录

1.0.2(2025-12-02)

完善文档

1.0.1(2025-12-02)

完善文档

1.0.0(2025-11-28)

内测

查看更多

平台兼容性

uni-app(4.85)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android Android插件版本 iOS iOS插件版本 鸿蒙
× × × × × × 5.0 1.0.0 12 1.0.0 ×
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 快应用-华为 快应用-联盟
× × × × × × × × × × ×

uni-app x(4.85)

Chrome Safari Android iOS 鸿蒙 微信小程序
× × 5.0 12 × ×

lyz-selectFiles

一个基于 UTS 开发的 uni-app 文件选择插件,兼容uni-app和uni-app x,支持在 iOS 和 Android 平台上选择文件,最常见的场景是将结果用于uni.uploadFile。

功能特性

  • ✅ 支持单文件和多文件选择
  • ✅ 支持自定义文件类型(MIME 类型)
  • ✅ 支持 iOS 和 Android 平台
  • ✅ 返回文件路径和文件信息

平台支持

平台 支持情况
Android ✅ 支持
iOS ✅ 支持
Web ❌ 不支持
小程序 ❌ 不支持

安装方法

  1. 导入插件到项目中,在需要的地方导入api并进行使用
  2. 写好使用代码后打包自定义基座(重要:一定要进行使用后打包,否则无法正确打入自定义基座)
  3. 构建好自定义基座后,启动自定义基座到设备进行验证

使用方法

基本用法(uni-app和uni-app x相同)

import { selectFiles } from '@/uni_modules/lyz-selectFiles'

// 选择单个文件
selectFiles({
  success: (res) => {
    console.log('选择的文件:', res.files)
    console.log('文件路径:', res.paths)
  },
  fail: (err) => {
    console.error('选择文件失败:', err.msg)
  },
  completion: () => {
    console.log('选择完成')
  }
})

选择多个文件

selectFiles({
  counts: 5, // 最多选择5个文件
  success: (res) => {
    res.files.forEach((file, index) => {
      console.log(`文件${index + 1}:`, file.name, file.uri)
    })
  }
})

Android 平台 - 指定文件类型

selectFiles({
  mimeTypes: 'application/pdf', // 只选择 PDF 文件
  // 或使用通配符
  // mimeTypes: 'image/*', // 选择所有图片
  // mimeTypes: '*/*', // 选择所有文件(默认)
  success: (res) => {
    console.log('选择的文件:', res.files)
  }
})

iOS 平台 - 指定文件类型

selectFiles({
  documentTypes: ['public.pdf'], // 只选择 PDF 文件
  // 或选择多种类型
  // documentTypes: ['public.image', 'public.pdf'],
  // documentTypes: ['public.data'], // 所有文件(默认)
  success: (res) => {
    console.log('选择的文件:', res.files)
  }
})

API 文档

selectFiles(options)

选择文件的函数。

参数说明

参数 类型 必填 说明
options SelectFilesOptions 选择文件的配置选项

SelectFilesOptions

属性 类型 必填 默认值 说明
mimeTypes string '*/*' Android 平台的文件类型(MIME 类型),如 'application/pdf''image/*'
documentTypes string[] ['public.data'] iOS 平台的文件类型(UTI 类型),如 ['public.pdf']['public.image']
counts number 1 最多选择的文件数量
success function - 成功回调函数
fail function - 失败回调函数
completion function - 完成回调函数(无论成功或失败都会调用)

SelectFilesSuccessResult

成功回调返回的数据结构:

属性 类型 说明
files SelectFilesFileVo[] 文件信息数组
paths string[] 文件路径数组

SelectFilesFileVo

文件信息对象:

属性 类型 说明
name string 文件名
uri string 文件 URI/路径

SelectFilesFailResult

失败回调返回的数据结构:

属性 类型 说明
files SelectFilesFileVo[] 文件信息数组(通常为空)
paths string[] 文件路径数组(通常为空)
msg string 错误信息

注意事项

  1. 平台差异

    • Android 平台使用 mimeTypes 参数指定文件类型 参考
    • iOS 平台使用 documentTypes 参数指定文件类型 参考
  2. 文件类型示例

    • PDF: Android 'application/pdf' / iOS 'public.pdf'
    • 图片: Android 'image/*' / iOS 'public.image'
    • 所有文件: Android '*/*' / iOS 'public.data'

版本历史

查看 changelog.md 了解版本更新历史。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。