Skip to content

Upload 上传

通过点击或拖拽上传文件。

基础用法

点击按钮上传文件。

vue
<template>
  <SxoUpload v-model:file-list="fileList">
    <SxoButton variant="outline">点击上传</SxoButton>
  </SxoUpload>
</template>

<script setup>
import { ref } from 'vue';
const fileList = ref([]);
</script>

拖拽上传

设置 drag 属性可以使用拖拽上传。

vue
<template>
  <SxoUpload 
    v-model:file-list="fileList" 
    drag 
    hint="支持 jpg, png 格式,文件不超过 2MB"
  />
</template>

<script setup>
import { ref } from 'vue';
const fileList = ref([]);
</script>

多文件上传

设置 multiple 属性可以一次选择多个文件。

vue
<template>
  <SxoUpload v-model:file-list="fileList" multiple>
    <SxoButton variant="outline">多文件上传</SxoButton>
  </SxoUpload>
</template>

<script setup>
import { ref } from 'vue';
const fileList = ref([]);
</script>

Upload 属性

参数说明类型默认值
action上传的地址string-
multiple是否支持多选文件booleanfalse
disabled是否禁用booleanfalse
drag是否启用拖拽上传booleanfalse
accept接受上传的文件类型string-
fileList / v-model:file-list默认上传列SxoFile[][]
hint提示说明文字string-

Upload 插槽

名称说明
default触发上传的元素

Upload 事件

事件名说明参数
update:fileList文件列表变化时触发fileList: SxoFile[]
change文件状态改变时触发fileList: SxoFile[]
remove文件列表移除文件时触发uid: number

API

参数说明类型默认值
action-String""
multiple-Booleanfalse
disabled-Booleanfalse
drag-Booleanfalse
accept-String""
fileList-Array[]
hint-String""