uni-app uni-file-picker 组件 电脑端小程序点击无弹出文件选择

uni-app uni-file-picker 组件 电脑端小程序点击无弹出文件选择

操作步骤:

<uni-file-picker v-model="formsData.information" limit="1" file-mediatype="all" file-extname="rar,zip" title="资料压缩后上传,最多选择1个文件"></uni-file-picker>

预期结果:

  • 电脑端弹出文件选择

实际结果:

  • 没有弹出

bug描述:

uni-file-picker 组件 电脑端小程序点击没有弹出文件选择,发的是线上测试版。编辑器里面可以打开,手机端可以打开

<uni-file-picker v-model="formsData.information" limit="1" file-mediatype="all" file-extname="rar,zip" title="资料压缩后上传,最多选择1个文件"></uni-file-picker>

附件:

image

信息项 内容
产品分类 uniapp/小程序/微信
PC开发环境 Windows
操作系统版本 w11
HBuilderX类型 正式
HBuilderX版本 3.99
工具版本号 1.06.2401020
基础库版本号 3.34
项目创建方式 HBuilderX
4 回复

组件内部使用的是小程序的api(chooseMedia),可以向小程序社区反馈 。


腾讯论坛上有人回复我,要用 chooseImage才行,你们组件是不是需要修改下

这个解决了吗? 我想选的所有文件,chooseImage 不是选择图片的吗?

在使用 uni-appuni-file-picker 组件时,如果在电脑端小程序中点击没有弹出文件选择框,可能是由于以下原因导致的:

1. 平台兼容性问题

uni-file-picker 组件在不同平台上的表现可能有所不同。特别是在电脑端小程序中,可能存在兼容性问题。你可以检查一下当前使用的是哪个小程序平台(如微信小程序、支付宝小程序等),并查阅对应平台的文档,确认是否支持 uni-file-picker 组件。

2. 权限问题

确保小程序有权限访问文件系统。在微信小程序中,你需要在小程序的 app.json 文件中配置 chooseFile 权限:

{
  "permission": {
    "scope.userLocation": {
      "desc": "你的位置信息将用于小程序位置接口的效果展示"
    },
    "scope.writePhotosAlbum": {
      "desc": "你的相册信息将用于小程序保存图片的效果展示"
    },
    "scope.chooseFile": {
      "desc": "你的文件信息将用于小程序选择文件的效果展示"
    }
  }
}

3. 事件绑定问题

确保你已经正确绑定了 @success@change 事件处理函数。例如:

<template>
  <uni-file-picker @success="handleSuccess" @change="handleChange"></uni-file-picker>
</template>

<script>
export default {
  methods: {
    handleSuccess(e) {
      console.log('文件选择成功', e);
    },
    handleChange(e) {
      console.log('文件选择变化', e);
    }
  }
}
</script>

4. 使用 uni.chooseFile API

如果 uni-file-picker 组件在电脑端小程序中无法正常工作,你可以直接使用 uni.chooseFile API 来实现文件选择功能。例如:

<template>
  <button [@click](/user/click)="chooseFile">选择文件</button>
</template>

<script>
export default {
  methods: {
    chooseFile() {
      uni.chooseFile({
        count: 1, // 最多可以选择的文件数量
        success: (res) => {
          console.log('文件选择成功', res.tempFiles);
        },
        fail: (err) => {
          console.error('文件选择失败', err);
        }
      });
    }
  }
}
</script>
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!