uni-app 小程序选择图片时出现了视频
uni-app 小程序选择图片时出现了视频
操作步骤:
- 程序使用uni.chooseImage,到选择图片界面,选择收藏文件夹,会展示收藏的视频
预期结果:
- 只显示图片
实际结果:
- 会显示视频
bug描述:
- 在使用uni.chooseImage时,在华为手机上可以选择收藏中的视频
| 信息类别 | 详细信息 |
|----------------|--------------|
| 产品分类 | uniapp/小程序/微信 |
| PC开发环境操作系统 | Windows |
| PC开发环境操作系统版本号 | 11 |
| HBuilderX类型 | 正式 |
| HBuilderX版本号 | 3.98 |
| 第三方开发者工具版本号 | 1.06.2308310 |
| 基础库版本号 | 3.2.4 |
| 项目创建方式 | HBuilderX |
| App下载地址或H5网址 | [小程序----》复课通](//ask.dcloud.net.cn/小程序----》复课通) |
4 回复
微信小程序从基础库 2.21.0 开始, wx.chooseImage 停止维护,你可以用uni.choosemedia试试,如还有问题,请向微信开发社区反馈。
使用uni.chooseMedia还是存在问题,选择一张图片的时候可以,但是选择多张图片的时候不生效count: number, //默认9 mediaType: [‘image’], sizeType: [‘compressed’], //可以指定是原图还是压缩图,默认二者都有 sourceType: [‘album’, ‘camera’],
回复 1***@qq.com: 请向微信开发者社区反馈
在 Uni-App 中,小程序选择图片时出现视频的情况,通常是因为在调用 uni.chooseImage
或 uni.chooseMedia
时,未正确设置参数,导致选择了视频文件。以下是一些可能的原因和解决方法:
1. 使用 uni.chooseImage
时出现视频
uni.chooseImage
是专门用于选择图片的 API,默认情况下不应该选择视频。如果出现视频,可能是以下原因:
- 原因:某些小程序平台(如微信小程序)可能会将视频文件也作为图片返回,尤其是当用户从相册中选择时。
- 解决方法:
- 在
uni.chooseImage
的success
回调中,检查返回的文件类型,过滤掉视频文件。 - 示例代码:
uni.chooseImage({ count: 9, // 最多选择 9 张图片 success: (res) => { const tempFilePaths = res.tempFilePaths; const validImages = tempFilePaths.filter((filePath) => { return !filePath.endsWith('.mp4') && !filePath.endsWith('.mov'); // 过滤掉视频文件 }); console.log('选择的图片:', validImages); } });
- 在
2. 使用 uni.chooseMedia
时出现视频
uni.chooseMedia
是用于选择图片和视频的 API,默认情况下可以选择图片和视频。如果只想选择图片,需要设置 mediaType
参数。
- 原因:未设置
mediaType
参数,导致默认选择了图片和视频。 - 解决方法:
- 将
mediaType
设置为['image']
,限制只能选择图片。 - 示例代码:
uni.chooseMedia({ count: 9, // 最多选择 9 个文件 mediaType: ['image'], // 只选择图片 success: (res) => { const tempFiles = res.tempFiles; console.log('选择的图片:', tempFiles); } });
- 将