FileUpload 文件上传

说明

专门针对上传文件的场景二次封装 element-plus 的 upload 组件。

代码演示

<template>
  <file-upload
    drag
    :files="files"
    action="/mock/upload"
    tip
    @on-success="onSuccess"
  />
</template>

<script setup>
import { ref } from "vue";
const files = ref([
  {
    name: "测试文件.zip",
    url: "http://xxx",
  },
  {
    name: "测试文件2.zip",
    url: "http://xxx",
  },
]);
const onSuccess = (res, file, fileList) => {
  console.log(res);
  console.log(file);
  console.log(fileList);
};
</script>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

Props

参数说明类型默认值
accept限制接受的文件类型string-
action必选参数,上传的地址string-
headers设置上传的请求头部object-
data上传时附带的额外参数object-
name上传的文件字段名stringfile
files回显图片地址列表array-
size上传文件大小限制,单位为 MBnumber5MB
tip是否显示提示栏boolean, string${message.value}且大小不超过 ${size}MB ,文件数量不超过 ${limit} 个 。
message文件类型错误的提示文案string-
ext支持的文件类型array-
delIcon是否显示删除按钮booleanfalse
limit限制上传数量,为 false 时无限制boolean,number3
showFileList是否显示文件列表booleantrue
drag是否支持拖拽文件上传booleanfalse

Events

参数说明返回值
on-success上传图片成功的回调(接口返回值,当前上传图片 file ,所有图片列表)