<template>
  <div>
    <el-upload
      action="https://jsonplaceholder.typicode.com/posts/"
      :before-upload="beforeUpload"
      :on-success="handleSuccess"
      :on-error="handleError"
      :file-list="fileList"
      :on-remove="handleRemove"
      :limit="3"
      :on-exceed="handleExceed"
      :disabled="uploadDisabled"
      :show-file-list="showFileList"
      :drag="drag"
      :multiple="multiple"
      :accept="accept"
      :on-progress="handleProgress"
      :http-request="httpRequest"
      :with-credentials="withCredentials"
      ref="upload"
    >
      <el-button
        size="small"
        type="primary"
        :disabled="uploadDisabled"
      >选取文件</el-button>
      <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
    </el-upload>
  </div>
</template>
<script setup>
import { ref } from 'vue';

const fileList = ref([]);
const uploadDisabled = ref(false);
const showFileList = ref(true);
const drag = ref(false);
const multiple = ref(false);
const accept = ref('.jpg,.png');
const withCredentials = ref(false);

function beforeUpload(file) {
  console.log('before upload');
}

function handleSuccess(response, file, fileList) {
  console.log('handle success');
}

function handleError(err, file, fileList) {
  console.log('handle error');
}

function handleRemove(file, fileList) {
  console.log('handle remove');
}

function handleExceed(files, fileList) {
  console.log('handle exceed');
}

function handleProgress(event, file, fileList) {
  console.log('handle progress');
}

function httpRequest() {
  console.log('http request');
}
</script>
用element-plus框架插入视频上传组件生成vue3格式 script setup代码要求变量为响应式函数用function定义无需任何文字说明只要源码即可

原文地址: https://www.cveoy.top/t/topic/ba1d 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录