<template>
    <el-upload
      class="avatar-uploader"
      action="api/file/upload"
      :show-file-list="false"
      :before-upload="beforeAvatarUpload"
      :on-progress="handleUploadProgress"
      :on-success="handleAvatarSuccess"
      ref="upload"
    >
      <el-button slot="trigger">Upload File</el-button>
      <div v-if="uploadProgress > 0">
        <el-progress :percentage="uploadProgress"></el-progress>
      </div>
    </el-upload>
  </template>
  
  <script>
  export default {
    data() {
      return {
        uploadProgress: 0,
      };
    },
    methods: {
      beforeAvatarUpload(file) {
        // do some validation on the file
      },
      handleUploadProgress(event, file, fileList) {
        this.uploadProgress = event.percent;
      },
      handleAvatarSuccess(response, file, fileList) {
        this.uploadProgress = 100;
        setTimeout(() => {
          this.uploadProgress = 0;
        }, 1000);
      },
    },
  };
  </script>

 

posted on 2023-04-13 16:45  鲤斌  阅读(657)  评论(0)    收藏  举报