element plus 文件上传到服务器代码
时间: 2024-01-02 13:05:18 浏览: 69
vuejs+element-ui+laravel5.4上传文件的示例代码
您可以参考以下代码:
```javascript
<template>
<div>
<el-upload
class="upload-demo"
action="//jsonplaceholder.typicode.com/posts/"
:on-preview="handlePreview"
:on-remove="handleRemove"
:before-remove="beforeRemove"
:file-list="fileList"
list-type="picture"
:auto-upload="false"
:on-success="handleSuccess"
:on-error="handleError"
:headers="{'Authorization': 'Bearer ' + token}"
:data="{tag: tag}"
:accept="accept"
:multiple="multiple">
<el-button slot="trigger" size="small" type="primary">选取文件</el-button>
<div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
</el-upload>
<el-dialog :visible.sync="dialogVisible">
<img width="100%" :src="dialogImageUrl" alt="">
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return {
accept: 'image/jpeg,image/png',
multiple: true,
fileList: [],
dialogImageUrl: '',
dialogVisible: false,
token: '',
tag: '',
};
},
methods: {
handlePreview(file) {
this.dialogImageUrl = file.url;
this.dialogVisible = true;
},
handleRemove(file, fileList) {
console.log(file, fileList);
},
beforeRemove(file, fileList) {
return this.$confirm(`确定移除 ${ file.name }?`);
},
handleSuccess(response, file, fileList) {
console.log(response, file, fileList);
if (response.code === 200) {
this.$message.success(response.message);
} else {
this.$message.error(response.message);
}
},
handleError(error, file, fileList) {
console.log(error, file, fileList);
this.$message.error(error.message || '上传失败,请重试');
},
},
};
</script>
```
这是一个基于 Element Plus 的文件上传示例代码。在该代码中,您可以设置文件类型、文件大小限制、上传路径、上传前的操作等。
需要注意的是,您需要实现后端接口来保存上传的文件。在上述代码中,上传地址为 `//jsonplaceholder.typicode.com/posts/`,该地址仅用于示例,您需要根据自己的接口地址进行修改。
当然,如果您使用的是 Node.js 等后端技术,也可以使用 Multer、koa-body 等中间件实现文件上传。
阅读全文