在<el-upload>中上传文件,在提交表单之后,怎么样让上传的文件名字展示出来在页面上,写一个这样的代码
时间: 2024-02-11 22:05:10 浏览: 81
好的,以下是一个使用 Vue 和 Element UI 实现上传文件并展示文件名的示例代码:
```html
<template>
<el-upload
ref="upload"
action="/api/upload"
:on-success="handleSuccess"
:on-remove="handleRemove"
:file-list="fileList"
:auto-upload="false"
>
<el-button type="primary">点击上传</el-button>
</el-upload>
<div v-if="fileName">
上传的文件名字为:{{ fileName }}
</div>
</template>
<script>
export default {
data() {
return {
fileList: [],
fileName: ''
}
},
methods: {
handleSuccess(response, file, fileList) {
// 上传成功后,获取文件名字
const name = file.name
// 将文件名字存储到组件的数据中
this.fileName = name
},
handleRemove(file, fileList) {
// 删除文件时,将文件名字清空
this.fileName = ''
}
}
}
</script>
```
在这个示例中,我们使用了 Element UI 的`<el-upload>`组件来实现文件上传功能。其中,我们设置了`auto-upload="false"`,表示文件不会自动上传,而是需要在提交表单时手动触发上传。我们通过监听`on-success`事件来获取上传成功的文件列表,并且获取其中的文件名字,然后将文件名字存储到组件的数据中。我们还监听了`on-remove`事件,当删除文件时,将文件名字清空。最后,在页面中展示文件名字时,我们使用插值表达式`{{fileName}}`来展示。
阅读全文