700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > el-upload 上传图片 编辑时图片回显以及后续提交问题

el-upload 上传图片 编辑时图片回显以及后续提交问题

时间:2022-06-19 14:05:23

相关推荐

el-upload 上传图片 编辑时图片回显以及后续提交问题

功能描述:

添加图片

上传成功在表格内显示该图片

点击编辑,打开上传图片对话框,图片回显(与添加共用同一个对话框)

html代码:(具体添加、编辑按钮以及表格内显示上传成功的图片html代码就不放了,这里只展示upload组件相关代码)

<el-upload ref="ref1"action="":file-list="fileList"list-type="picture-card"accept="image/*":auto-upload="false":multiple="false":limit="1"><i class="el-icon-plus"></i></el-upload><el-button type="primary"@click="dialogConfirm">确定</el-button>

官网el-upload参数说明(这里只放了现用到的参数):

js代码:

<script>export default {data() {return {filelist:[]dialogMode:'create'//create、edit};},methods: {fillFormData(){let formData = new FormData();let photo = this.$refs['ref1'].uploadFiles[0];if(photo===undefined){this.$message.error("请选择照片");return false;}if(photo!==undefined){formData.append('照片', photo.raw);//根据后端需要的参数进行相应更改,大多是文件格式}return formData;},dialogConfirm() {let formData=this.fillFormData();if(this.dialogMode ==='edit'){//dialogMode用于判断当前时添加还是编辑this.api.update(formData).then(res => {//调用修改接口if (res.data.code == "OK") {this.$message({type: "success",message: "修改成功!",duration:5000});this.fileList=[];} else {this.$message.error(res.data.message);}},()=>{this.$message.error("修改失败");}).finally(()=>{});}else{this.api.insert(formData).then(res => {//添加接口if (res.data.code == "OK") {this.$message({type: "success",message: "新建成功!",duration:5000});this.fileList=[];} else {this.$message.error(res.data.message);}},()=>{this.$message.error("新建失败");}).finally(()=>{});}}},//点击编辑时图片回显edit(info){//info=>后台接口返回的数据 let url=this.baseUrl+info.photo//url的地址根据项目实际需要,info.photo=>图片路径,this.baseUrl=>上传的网络地址this.fileList=[];this.fileList.push({'url': url })this.dialogMode='edit';//设置为编辑},onCreateNew(){this.fileList=[];this.dialogMode='create';//设置为添加},}}</script>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。