element-plus上传 文件进度条
时间: 2023-08-06 16:03:14 浏览: 386
对于element-plus上传文件时的进度条显示,你可以通过监听`@progress`事件来获得上传进度,并在事件回调中更新进度条的状态。以下是一个示例代码:
```vue
<template>
<el-upload
class="upload-demo"
action="/upload"
:on-progress="handleUploadProgress"
>
<el-button slot="trigger" size="small" type="primary">点击上传</el-button>
</el-upload>
<el-progress v-show="showProgress" :percentage="progress"></el-progress>
</template>
<script>
export default {
data() {
return {
showProgress: false,
progress: 0
};
},
methods: {
handleUploadProgress(event, file, fileList) {
this.showProgress = true;
this.progress = event.percent || 0;
// 如果上传完成,隐藏进度条
if (this.progress === 100) {
setTimeout(() => {
this.showProgress = false;
this.progress = 0;
}, 1000);
}
}
}
};
</script>
```
在上面的代码中,`el-upload`组件通过`on-progress`属性绑定了一个事件处理函数`handleUploadProgress`,当文件上传进度发生变化时,该函数会被调用。在事件处理函数中,我们将进度条显示出来,并更新进度条的值。当上传完成时,我们使用`setTimeout`来延迟一段时间后隐藏进度条。
这样,当你使用element-plus进行文件上传时,就可以同时显示上传进度条了。
阅读全文