From 116d2ab72cb69a1993bad957a3e8cb603f28ff14 Mon Sep 17 00:00:00 2001 From: 刘汉宸 Date: Wed, 22 Jul 2020 18:08:30 +0800 Subject: [PATCH] feat: 优化Upload组件 --- examples/views/docs/component/upload.md | 134 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----- packages/upload/index.vue | 507 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------- 2 files changed, 611 insertions(+), 30 deletions(-) diff --git a/examples/views/docs/component/upload.md b/examples/views/docs/component/upload.md index c02858f..606c417 100644 --- a/examples/views/docs/component/upload.md +++ b/examples/views/docs/component/upload.md @@ -4,14 +4,55 @@ ## 基础用法 -默认为图片上传 +默认支持图片和图片一起上传 -::: snippet 图片上传 +::: snippet 配置项`action`、`headers`、`data`与**Element**中的**el-upload**相同,值的格式为逗号分隔的字符串 + +```html + + + +``` + +::: + +## 限制上传 + +可以限制图片上传或者文件上传 + +::: snippet `type`设置上传模式,`limit`限制上传数量,`file-type`限制文件上传格式 ```html @@ -19,9 +60,68 @@ export default { data() { return { + file: '', + image: '', + fileType: '', + headers: { + 'Authorization': 'Bearer 2a6238c6-5a87-4f3f-893b-14aef14b9539' + } + } + }, +} + +``` + +::: + +## 多选与拖拽 + +可以多选上传及拖拽上传 + +::: snippet `multiple`设置多选上传,`drag`设置拖拽上传 + +```html + + + +``` + +::: + +## 角标删除与提醒 + +默认支持角标删除样式,以及配置删除前确认提示 + +::: snippet `corner-close`开启角标删除,`delete-confirm`设置删除确认提示 + +```html + + + ``` @@ -35,9 +135,33 @@ export default { 参数|说明|类型|可选值|默认值 -|-|-|-|- value | 值 | String | - | - +type | 上传类型 | String | all,image,file | all +file-type | 上传文件类型限制,仅在type为file时生效 | String | - | - +disabled | 是否禁用 | Boolean | - | false +multiple | 是否支持多选文件 | Boolean | - | false +limit | 最大上传数量 | Number | - | - +drag | 是否启用拖拽上传 | Boolean | - | false +draggable | 是否启用拖拽改变顺序(需要项目安装vuedraggable并注册为draggable) | Boolean | - | false +action | 上传地址 | String | - | - +headers | 自定义请求头 | Object | - | {} +delete-confirm | 删除图片时弹出确认框 | Boolean | - | false +data | 上传时附带的额外参数 | Object | - | {} +name | 上传文件字段名 | String | - | file +response-filter | 返回值处理函数 | Function | - | - +before-upload | 上传文件之前的钩子 | Function | - | - +size | 大小 | String | mini, small, large | large +http | HTTP请求库 | Function | - | - +http-request | 自定义请求方法 | Function | - | - +corner-close | 是否开启角标删除按钮 | Boolean | - | false ## Events 事件 事件名称|说明|回调参数 -|-|- -change | 改变选中 | 值,选中项数据 \ No newline at end of file +upload | 单个文件上传成功后的事件 | 请求response + +## Slots 插槽 + +名称|说明|方法 +-|-|- +image-viewer | 自定义图片查看器 | show, index, list, close, open diff --git a/packages/upload/index.vue b/packages/upload/index.vue index 4d2a6b2..a62bc6a 100644 --- a/packages/upload/index.vue +++ b/packages/upload/index.vue @@ -1,59 +1,516 @@ -- libgit2 0.21.0