vue springboot头像上传
时间: 2023-10-31 22:07:25 浏览: 127
头像上传功能可以通过vue和springboot来实现。在vue的代码中,利用el-upload组件来实现文件上传功能,可以通过设置auto-upload属性为false来控制是否自动上传。当点击提交按钮后,再进行图片的上传。这样可以避免一开始就将图片上传到后台磁盘上,减轻磁盘压力。同时,还需要注意判断查询记录时的条件,包括id是否能查询出记录、查询出的记录中Avatar字段不为空、传进来的头像url与原先记录中的不一致时,需要先删除原先存储的头像。这样可以保证每个用户只有一个头像存储在本地或者服务器上。
以下是相关的vue代码示例:
```javascript
el-upload组件:
<el-upload
:action="#"
:auto-upload="false"
:before-upload="beforeAvatarUpload"
:on-success="handleAvatarSuccess">
</el-upload>
方法:
methods: {
handleAvatarSuccess(res, file) {
this.$message.success("修改头像成功");
this.imageUrl = URL.createObjectURL(file.raw);
},
beforeAvatarUpload(file) {
const isJPG = file.type === 'image/jpeg';
const isLt2M = file.size / 1024 / 1024 < 2;
if (!isJPG) {
this.$message.error('上传头像图片只能是 JPG 格式!');
}
if (!isLt2M) {
this.$message.error('上传头像图片大小不能超过 2MB!');
}
return isJPG && isLt2M;
}
}
```
在springboot中,可以编写相应的接口来处理图片上传的逻辑。根据接口的实现,可以将上传的文件保存到本地或者服务器的指定路径上。
阅读全文