Ba-MediaPicker 是一款功能强大的uniapp图片、音视频选择插件,可自定义配置,支持单选、多选,支持已选项回显,支持图片压缩、裁剪,支持预览大图、视频、音频等等。


在 script 中引入组件
const mediaPicker = uni.requireNativePlugin('Ba-MediaPicker')
在 script 中调用
methods: {
selectPicture() {//图片、音视频选择
mediaPicker.selectPicture({
'onlyCamera': false,
'mediaType': 1,
'single': false,
'singleBack': false,
'max': 9,
'maxVideo': 1,
'compress': false,
'crop': false,
'selectedList': this.selectedList,//已选择项回显,注意:需传选择回调返回的data数组
//...等等,参照:自定义配置参数表
},
(ret) => {//回调参数
console.log(ret);
if (ret.data) {
ret.data.forEach(item => {
//文件名: item.fileName
//初始路径: item.path
//绝对路径: item.realPath
//压缩文件路径: item.compressPath
//...等等,参照:回调函数表
})
}
});
},
preview(index) {//已选择项预览
mediaPicker.preview({
'position': index,//初始显示第几项
'selectedList': this.selectedList,//已选择项回显,注意:需传选择回调返回的data数组
});
},
}
| 属性名 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| onlyCamera | Boolean | false | 是否仅拍照 |
| mediaType | Number | 0 | 选择媒体类型 0:所有 1:图片 2:视频 3:音频 |
| single | Boolean | false | 是否单选 |
| singleBack | Boolean | false | 单选模式直接返回 |
| max | Number | 9 | 多选最大选择数 |
| maxVideo | Number | 1 | 多选最大选择数(视频) |
| compress | Boolean | false | 是否压缩 |
| crop | Boolean | false | 是否裁剪 |
| cropScale | Number | 0 | 裁剪比例 0(默认) 1(1:1) 2(3:4) 3(3:2) 4(16:9) |
| cropRound | Boolean | false | 是否裁剪圆形 |
| gif | Boolean | false | 是否显示gif图片 |
| language | Number | 0 | 语言 0简体中文 1繁体中文 2英语 3韩语 4德语 5法语 6日语 7越语 8西班牙语 9葡萄牙语 10阿拉伯语 11俄语 |
| slide | Boolean | true | 滑动选择 |
| isCamera | Boolean | true | 显示拍摄、拍照、录音 |
| isDisplayTimeAxis | Boolean | false | 显示资源时间轴 |
| isOriginalControl | Boolean | false | 是否开启原图功能 |
| isOpenClickSound | Boolean | false | 是否开启点击声音 |
| isMaxSelectEnabledMask | Boolean | false | 是否显示蒙层(达到最大可选数量,默认false,弹窗提示) |
| selectedList | Array | [] | 已选择项回显,注意:需传选择回调返回的data数组 |
| position | Number | 0 | 初始显示第几项(已选择预览时使用) |
| 属性名 | 类型 | 说明 |
|---|---|---|
| data | Array | 已选择列表 |
| 属性名 | 类型 | 说明 |
|---|---|---|
| fileName | String | 文件名 |
| path | String | 初始路径 |
| realPath | String | 绝对路径 |
| compressed | Boolean | 是否压缩 |
| compressPath | String | 压缩文件路径 |
| isCut | Boolean | 是否裁剪 |
| cutPath | String | 裁剪路径 |
| isOriginal | Boolean | 是否开启原图 |
| originalPath | String | 原图路径 |
| videoThumbnailPath | String | 视频缩略图 |
| size | String | 文件大小 |
| duration | String | 文件时长 |