Skip to content

BizUploadImage 图片上传 ​

图片墙形态的图片上传:数量 / 大小前置校验、上传中占位、失败可删重传、点击全屏预览。上传实现由业务侧以 request 注入,组件零接口;v-model 同步图片地址数组,可直接进表单提交。

基础用法 ​

上传
最多 9 张,单张不超过 5MB,支持点击放大预览
v-model(0 张):(空)
request 返回图片地址即入墙;v-model 同步地址数组。

其他用法 ​

photo-1441974231531-c6227db76b6e?w=400&h=400&fit=crop&q=60
上传
最多 3 张;尺寸覆盖为 72px(css 变量 --biz-upload-image-size)
limit 数量上限、css 变量覆盖缩略尺寸、编辑回显(:model 初始值)、clear() 清空。

证照上传 ​

photo-1554224155-6726b3ff858f?w=200&h=140&fit=crop
上传证照
营业执照清晰原件照片(jpg / png),单张不超过 2MB,正本 + 副本各一张
已上传 1 / 2 张;点击缩略图可全屏预览
实名场景:accept 限定 jpg / png、limit=2(正本 + 副本)、max-size=2,trigger-text 定制触发文案,tip 说明拍摄要求;上传后点击缩略图全屏预览。

个人头像 ​

photo-1535713875002-d1d0cf377fde?w=200&h=200&fit=crop
正方形照片效果最佳,上传后自动裁切为圆形展示
当前头像地址:https://images.unsplash.com/photo-1535713875002-d1d0cf377fde?w=200&h=200&fit=crop
头像场景:limit=1 单图、css 变量放大触发块,上传后圆形展示。

商品图册 ​

photo-1523275335684-37898b6baf30?w=200&h=150&fit=crop
photo-1505740420928-5e560c06d30e?w=200&h=150&fit=crop
添加图片
首图为主图;jpg / png / webp,单张 ≤ 3MB
已传 2 / 9 张,还可传 7 张
电商场景:最多 9 张、实时额度提示(已传 / 还可传),首图即主图。

多规格图分组 ​

红 1 张 蓝 0 张 绿 0 张
photo-1523275335684-37898b6baf30?w=160&h=120&fit=crop
上传红色规格图
每个规格最多 3 张,至少 1 张才可上架该规格
SKU 场景:红 / 蓝 / 绿三规格各自独立 v-model(:key 切换重建),规格徽标实时显示各自张数。

Props ​

属性名类型默认值说明
model-value / v-modelstring[][]已上传图片地址
request(file: File) => Promise<string>—必填。上传实现(业务接口在业务侧),resolve 图片地址
acceptstring'image/*'接受的文件类型
limitnumber9数量上限(达上限隐藏加号)
max-sizenumber5单张大小上限(MB)
tipstring''底部提示文案
trigger-textstring'上传'触发块文字说明;传空串仅显示图标

其余属性(name / headers / multiple...)经 v-bind="$attrs" 全量透传 el-upload。

Events ​

事件名参数说明
update:model-value(urls: string[])图片列表变化(仅成功项)
error(message: string)前置校验不过 / 上传失败

Slots ​

插槽名说明
—无插槽

Expose ​

属性/方法说明
clear() => void 清空全部图片
records当前记录(含上传中 / 失败态)