import { defineProps } from '../../libs/util/props'; import theme from '../../libs/config/theme.js'; export default defineProps('upload', { // 接受的文件类型, 可选值为all media image file video accept: { type: String, default: 'image' }, // 根据文件拓展名过滤,每一项都不能是空字符串。默认不过滤。例如['.zip','.exe','.js'],不支持application/msword等类似值 extension: { type: Array, default: () => [] }, // 图片或视频拾取模式,当accept为image类型时设置capture可选额外camera可以直接调起摄像头 capture: { type: [String, Array], default: () => ['album', 'camera'] }, // 当accept为video时生效,是否压缩视频,默认为true compressed: { type: Boolean, default: true }, // 当accept为image时生效,图片压缩参数,值为false不压缩 compressImage: { type: [Boolean, Object], default: () => ({ quality: 80, compressedWidth: 1000 }) }, // 当accept为video时生效,可选值为back或front camera: { type: String, default: 'back' }, // 当accept为video时生效,拍摄视频最长拍摄时间,单位秒 maxDuration: { type: Number, default: 60 }, // 上传区域的图标,只能内置图标 uploadIcon: { type: String, default: 'camera-fill' }, // 上传区域的图标的颜色,默认 uploadIconColor: { type: String, default: theme.lightColor }, // 是否开启文件读取前事件 useBeforeRead: { type: Boolean, default: false }, // 读取后的处理函数 afterRead: { type: [Function, null], default: null }, // 读取前的处理函数 beforeRead: { type: [Function, null], default: null }, // 是否显示组件自带的图片预览功能 previewFullImage: { type: Boolean, default: true }, // 最大上传数量 maxCount: { type: [String, Number], default: 52 }, // 是否启用 disabled: { type: Boolean, default: false }, // 预览上传的图片时的裁剪模式,和image组件mode属性一致 imageMode: { type: String, default: 'aspectFill' }, // 标识符,可以在回调函数的第二项参数中获取 name: { type: String, default: '' }, // 所选的图片的尺寸, 可选值为original compressed sizeType: { type: Array, default: () => ['original', 'compressed'] }, // 是否开启图片多选,部分安卓机型不支持 multiple: { type: Boolean, default: false }, // 是否展示删除按钮 deletable: { type: Boolean, default: true }, // 文件大小限制,单位为byte maxSize: { type: [String, Number], default: Number.MAX_VALUE }, // 显示已上传的文件列表 fileList: { type: Array, default: () => [] }, // 上传区域的提示文字 uploadText: { type: String, default: '' }, // 内部预览图片区域和选择图片按钮的区域宽度 width: { type: [String, Number], default: 80 }, // 内部预览图片区域和选择图片按钮的区域高度 height: { type: [String, Number], default: 80 }, // 是否在上传完成后展示预览图 previewImage: { type: Boolean, default: true }, // 是否显示圆角 round: { type: [String, Number], default: 0 } })