从相册选择视频和图片
使用说明
import { MImagePicker } from "@yl/super-jssdk";
MImagePicker.openAlubmForVideosAndImages(optional);
参数说明
| 参数 |
类型 |
必填 |
作用 |
| optional |
Object |
否 |
非必选参数 |
optional
| 参数 |
类型 |
必填 |
作用 |
| paths |
array |
否 |
文件存储路径列表。详情请参考下方paths规则说明 |
| maxSelectCount |
number |
否 |
默认为 1,paths 参数不传时,该参数才生效,使用 maxSelectCount 参数代替 paths 参数去创建 maxSelectCount 个图片和 maxSelectCount 个视频存储路径 |
| options |
Object |
否 |
可选参数 |
options 结构说明
| 字段名称 |
类型 |
说明 |
| maxVPSize |
int |
最大可选数量,必须小于等于 paths 的长度 |
| edit |
boolean |
是否启用图片编辑功能,只能编辑图片,视频无法编辑,默认 false 不启用 |
| editConfig |
json |
编辑图片功能配置项editConfig |
editConfig 结构说明
| 字段名称 |
类型 |
说明 |
| cropAspectRatio |
string |
裁剪框宽高比,格式:整形数字:整形数字,如"1:1","4:3","16:9";格式不合法或不传该字段时用户可自由调整宽高比。1.2.5 版本开始生效 |
| limits |
array |
图片编辑功能配置项,仅在 edit=true 时生效。必须开启一个功能,否则忽略 limits 参数,开启所有功能可传入参数释义如下:limit 参数 |
| autoSelected |
string |
自动选中激活编辑功能 默认所有编辑功能都不主动激活 可传入参数释义如下:limit 参数 |
limit参数 1.3.4 版本开始生效
| limit |
说明 |
| shape |
图形,如果没有传入,隐藏此功能 |
| doodle |
涂鸦,如果没有传入,隐藏此功能 |
| text |
添加文字,如果没有传入,隐藏此功能 |
| crop |
裁剪,如果没有传入,隐藏此功能 |
| mosaic |
马赛克,如果没有传入,隐藏此功能 |
paths规则说明
- 路径名必须包含文件拓展名
- 插件会通过传入的路径拓展名来判断是否能选择图片、视频还是图片和视频都能选
- 选图片文件拓展名传 jpg,选视频文件拓展名传mp4。传递非 jpg,mp4 的文件拓展名(包含没有拓展名),将会直接进入错误回调
- 自定义相册中非 jpg、mp4 的文件选择是会提示不支持的文件类型
- 视频、图片文件超过数量时会提示:最多选择X张/个图片/视频。X 为路径中传递的图片/视频数量
返回说明
| 参数 |
类型 |
作用 |
| resolve(result) |
Function |
成功回调,result为结果数组(result.length ≤ paths.length),result内容 |
| reject(err) |
Function |
失败回调,err 为详细的错误信息,是一个 json 对象,例如:{"errCode": -1, "errMsg":"some explain of error."} |
result 数据
[{
"code":0,
"result":"path",
"errMsg":"失败错误具体原因"
}]
代码示例
MImagePicker.openAlubmForVideosAndImages({
paths: [
cordova.file.externalDataDirectory + 'test1.mp4',
cordova.file.externalDataDirectory + 'test2.mp4',
cordova.file.externalDataDirectory + 'test3.jpg',
]})
.then(res => {
console.log('res', res);
}).catch(err => {
console.log('err', err);
})
MImagePicker.openAlubmForVideosAndImages({
maxSelectCount: 3
})
.then(res => {
console.log('res', res);
}).catch(err => {
console.log('err', err);
})