el-input 实现上传文件功能
时间: 2024-11-23 13:15:46 浏览: 14
`el-input` 是 Element UI 中的一个输入框组件,它本身并不直接支持文件上传的功能。如果你想在 `el-input` 上添加文件上传功能,可以结合其他Element UI提供的组件 `el-upload` 使用。`el-upload` 是一个专门用于文件上传的组件,通常会包含在一个 `el-form` 或者 `div` 元素里,配置好`action`(上传地址)、`on-success` (上传成功的回调) 和 `on-change` (文件变化的监听) 等属性。
例如:
```html
<template>
<el-form-item label="文件上传">
<el-upload
action="your-api-url"
:auto-upload="false" // 需要手动触发上传
:on-change="handleChange"
:on-success="handleSuccess"
accept="image/*, .doc, .docx" // 可接受的文件类型
>
<el-button slot="trigger">选择文件</el-button>
<el-button type="primary" @click="submitUpload">上传</el-button>
</el-upload>
</el-form-item>
</template>
<script>
export default {
methods: {
handleChange(file) {
console.log('文件改变', file);
},
handleSuccess(response, file) {
console.log('文件上传成功', response, file);
},
submitUpload() {
this.$refs.upload.submit(); // 手动触发上传
}
}
}
</script>
```
在这个例子中,用户可以选择文件,然后点击“上传”按钮手动触发上传,或等待用户完成选择后自动上传(通过`auto-upload`属性控制)。`on-change`事件会在文件发生变化时触发,`on-success`事件则在上传成功后触发。
阅读全文