位置: IT常识 - 正文

【若依框架 RuoYi-Vue Ruo-Yi-Plus 图片回显不显示问题,OSS文件上传】(若依框架入门)

编辑:rootadmin
【若依框架 RuoYi-Vue Ruo-Yi-Plus 图片回显不显示问题,OSS文件上传】 若依框架开发代码生成的图片上传列表不回显问题解决!文章目录若依框架开发代码生成的图片上传列表不回显问题解决!前言一、问题再现1.设计表 person(员工表) 有 id (id) \ name(姓名) \ gender (性别)\ photo (证件照)2.使用若依代码生成功能,导入person表,代码生成3.将生成的代码导入到项目中得到如下列表和表单(插入数据),图片仅在提交、修改表单中回显,列表没有显示,如下图。二、问题解析1.在若依框架中图片上传与回显引用了 components 组件组件中的 ImageUpload 与 ImagePreview2.person.vue 使用ImageUpload组件上传图片3.person.vue 使用ImagePreview组件回显图片,得到的却是OSS回传的oss_id 值,所以在 image-oreview 组件才不回显图片,这时我们需要拿到图片的url地址才是正确的回显方式。4.person.vue为何会出现不回显的情况出现呢?我们找到 components > ImageUpload文件夹二、问题解决1.修改 uploadedSuccessfully 方法2.添加新字段 photos 用来存放图片 url3.修改前端代码与方法4.回显操作完成回显总结前言

推荐整理分享【若依框架 RuoYi-Vue Ruo-Yi-Plus 图片回显不显示问题,OSS文件上传】(若依框架入门),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:若依框架是什么框架,若依框架怎么用,若依框架主要有哪些功能特性,若依框架收费吗,若依框架是什么框架,若依框架视频教程,若依框架视频教程,若依框架是干嘛的,内容如对您有帮助,希望把文章链接给更多的朋友!

使用若依框架进行项目开发的时会用到框架自带的代码生成功能,极大方便我们进行项目开发。基于框架开发肯定会有一些功能需要自行优化定制,在设计数据库表代码生成的同时有图片的展示需求,因此在若依框架中发现了图片在列表中回显不显示的问题,接下来我们看看如何解决该问题。

提示:以下是本篇文章正文内容,下面案例可供参考

一、问题再现1.设计表 person(员工表) 有 id (id) \ name(姓名) \ gender (性别)\ photo (证件照)

2.使用若依代码生成功能,导入person表,代码生成

3.将生成的代码导入到项目中得到如下列表和表单(插入数据),图片仅在提交、修改表单中回显,列表没有显示,如下图。

二、问题解析1.在若依框架中图片上传与回显引用了 components 组件组件中的 ImageUpload 与 ImagePreview//mian.js// 文件上传组件import FileUpload from "@/components/FileUpload"// 图片上传组件import ImageUpload from "@/components/ImageUpload"//*************这是分割线*****************// 全局组件挂载Vue.component('ImageUpload', ImageUpload)Vue.component('ImagePreview', ImagePreview)2.person.vue 使用ImageUpload组件上传图片<el-form-item label="证件照" prop="photo"><image-upload v-model="form.photo"/></el-form-item>3.person.vue 使用ImagePreview组件回显图片,得到的却是OSS回传的oss_id 值,所以在 image-oreview 组件才不回显图片,这时我们需要拿到图片的url地址才是正确的回显方式。 <el-table-column label="证件照" align="center" prop="photo" width="100"> <template slot-scope="scope"> <image-preview :src="scope.row.photo" :width="50" :height="50"/> </template> </el-table-column>

4.person.vue为何会出现不回显的情况出现呢?我们找到 components > ImageUpload文件夹

查看里面的 uploadedSuccessfully 方法和数据关系,我们可以看到上传的过程中用到了OSS对象存储,这时候我们就可以从根源发现问题,在图片上传的时候对象调用了如下方法,因此回显的内容就是 oss_id 而并不是图片的 url 地址。

// 上传结束处理 uploadedSuccessfully() { if (this.number > 0 && this.uploadList.length === this.number) { this.fileList = this.fileList.concat(this.uploadList); this.uploadList = []; this.number = 0; this.$emit("input", this.listToString(this.fileList)); this.$modal.closeLoading(); } },【若依框架 RuoYi-Vue Ruo-Yi-Plus 图片回显不显示问题,OSS文件上传】(若依框架入门)

二、问题解决1.修改 uploadedSuccessfully 方法

在上传图片的过程中,调用了父子组件 $emit 这时发现了什么?我们可以看到在提交图片那里可以使用 @input 来获取调用方法,这时我们可以直接获取到该图片的信息。

//****************修改前 // 上传结束处理 uploadedSuccessfully() { if (this.number > 0 && this.uploadList.length === this.number) { this.fileList = this.fileList.concat(this.uploadList); this.uploadList = []; this.number = 0; this.$emit("input", this.listToString(this.fileList)); this.$modal.closeLoading(); } },//*****************修改后 // 上传结束处理 uploadedSuccessfully() { if (this.number > 0 && this.uploadList.length === this.number) { this.fileList = this.fileList.concat(this.uploadList); this.uploadList = []; this.number = 0; this.$emit("input", this.listToString(this.fileList), this.fileList); this.$modal.closeLoading(); } },

我们在控制台打印一下 this.fileList 可以看到有了我们想要的 url 了

2.添加新字段 photos 用来存放图片 url

随后在后端实体类以及 PersonMapper.xml 添加字段 photos 重新build项目并启动

3.修改前端代码与方法

添加操作:还需在表单重置方法上添加 photos:undefined

//***********修改前 <el-form-item label="证件照" prop="photo"> <image-upload v-model="form.photo"/> </el-form-item>//***********修改后 <el-form-item label="证件照" prop="photo"> <image-upload @input="getImgUrl" v-model="form.photo"/> </el-form-item> // 表单重置 reset() { photos:undefined }

添加 method 方法获取上面我们讲到的 url 并存入到我们新加的字段中去。

getImgUrl(id,item){ this.form.photos=item[0].url },4.回显操作

列表代码:

//*********修改前: <el-table-column label="证件照" align="center" prop="photo" width="100"> <template slot-scope="scope"> <image-preview :src="scope.row.photo" :width="50" :height="50"/> </template> </el-table-column>//*********修改后:在:src="scope.row.photos"处进行了改动 <el-table-column label="证件照" align="center" prop="photos" width="100"> <template slot-scope="scope"> <image-preview :src="scope.row.photos" :width="50" :height="50"/> </template> </el-table-column>完成回显

这时候我们就看到了回显的内容了,重新进行图片上传或修改就能看到图片了,点击查看。 是不是觉得非常有趣呢?觉得有用的话欢迎支持~

总结

每天总结一点经验,都会有量变的结果!

本文链接地址:https://www.jiuchutong.com/zhishi/269577.html 转载请保留说明!

上一篇:Win10两个屏幕配置和切换的方法(win10两个屏幕两个桌面)

下一篇:如何免费获取Win11万能密钥 win11激活码分享 附激活工具(如何免费获取Win11企业版)

  • 斐讯智能路由器k2怎么设置密码(斐讯智能路由器app下载)

    斐讯智能路由器k2怎么设置密码(斐讯智能路由器app下载)

  • 华为p40 pro是5g手机吗(华为p40pro是真正意义上的5g吗)

    华为p40 pro是5g手机吗(华为p40pro是真正意义上的5g吗)

  • 10016老是打电话时怎么回事(10016老是打电话是怎么回事)

    10016老是打电话时怎么回事(10016老是打电话是怎么回事)

  • 电脑被偷了能定位吗(电脑偷了,具体能定位吗)

    电脑被偷了能定位吗(电脑偷了,具体能定位吗)

  • 钉钉浮窗老师能看见吗(钉钉浮窗老师能发现吗)

    钉钉浮窗老师能看见吗(钉钉浮窗老师能发现吗)

  • 微信为什么不能删除别人的评论(微信为什么不能注册小号)

    微信为什么不能删除别人的评论(微信为什么不能注册小号)

  • 苹果11手机用一会儿发烫什么原因(苹果11手机用一会屏幕就变暗)

    苹果11手机用一会儿发烫什么原因(苹果11手机用一会屏幕就变暗)

  • 微信有一条未读消息却找不到(微信有一条未读信息为什么找不到)

    微信有一条未读消息却找不到(微信有一条未读信息为什么找不到)

  • 荣耀20怎么设置返回键(荣耀20怎么设置动态壁纸)

    荣耀20怎么设置返回键(荣耀20怎么设置动态壁纸)

  • 微信国际版有什么区别(微信国际版好用吗)

    微信国际版有什么区别(微信国际版好用吗)

  • mkpx2电容是什么电容(mkp x2电容)

    mkpx2电容是什么电容(mkp x2电容)

  • 大众点评和美团的区别(大众点评和美团评价互通吗)

    大众点评和美团的区别(大众点评和美团评价互通吗)

  • word数字怎么竖排版(word数字怎么竖版)

    word数字怎么竖排版(word数字怎么竖版)

  • ps如何复制粘贴(ps如何复制粘贴到另一个图层)

    ps如何复制粘贴(ps如何复制粘贴到另一个图层)

  • 滴滴如何取消预付车费(滴滴如何取消预约车)

    滴滴如何取消预付车费(滴滴如何取消预约车)

  • 微信京东怎么申请退款(微信京东怎么申请售后退款)

    微信京东怎么申请退款(微信京东怎么申请售后退款)

  • 荣耀9x怎么唤醒语音助手(荣耀9x怎么唤醒YOYO不需要长按电源键)

    荣耀9x怎么唤醒语音助手(荣耀9x怎么唤醒YOYO不需要长按电源键)

  • iphone 11是双卡的吗(iphone 11是双卡的还是单卡的)

    iphone 11是双卡的吗(iphone 11是双卡的还是单卡的)

  • 怎么恢复手机微信聊天记录(怎么恢复手机微信删除的照片和视频)

    怎么恢复手机微信聊天记录(怎么恢复手机微信删除的照片和视频)

  • string类可以被继承吗(java中string可以被继承吗)

    string类可以被继承吗(java中string可以被继承吗)

  • 如何恢复微信注册账号(如何恢复微信注销)

    如何恢复微信注册账号(如何恢复微信注销)

  • 苹果相机照出来是反的(苹果相机照出来的是真实的自己吗)

    苹果相机照出来是反的(苹果相机照出来的是真实的自己吗)

  • 手机边框缝隙怎么修复(手机边框缝隙大有什么影响)

    手机边框缝隙怎么修复(手机边框缝隙大有什么影响)

  • 格力手机如何快速手势截屏(格力手机如何快速录屏)

    格力手机如何快速手势截屏(格力手机如何快速录屏)

  • 电脑显示器连接线(电脑显示器连接机顶盒教程)

    电脑显示器连接线(电脑显示器连接机顶盒教程)

  • 怎么进入bios设置 进入BIOS方法大全及bios设置视频教程(怎么进入bios设置界面设置内存)

    怎么进入bios设置 进入BIOS方法大全及bios设置视频教程(怎么进入bios设置界面设置内存)

  • 附加税申报表里怎么填写
  • 个人所得税的会计科目
  • 电商行业会计核算的特点
  • 应收账款资金占用费公式
  • 出口货物进项税怎样处理
  • 亏损 纳税
  • 有限合伙企业合伙人责任
  • 个人所得税财产所得
  • 新成立的公司银行存款如何入账
  • 验资取消股东怎么办
  • 什么是前期差错
  • 现金折扣 会计处理
  • 非股东可以投资项目吗
  • 增值税专票需要哪些开票信息
  • 银行承兑汇票收费
  • 工程开发票备注栏必需要写吗?
  • 计算广告的基本运作模式
  • 售后返租税收规定
  • 工伤后辞职了还可以报工伤
  • 1697510024
  • windows 10如何清除联网记录
  • 工程施工预付账款会计分录
  • linux killall
  • mac连不上wifi怎么回事 其他设备却可以
  • 货没到申请退款玩付邮费吗
  • 企业网管出路
  • win11自动更新卡在94%
  • 转出未交增值税会计科目
  • 在php中,字符串有哪些表示形式
  • 微软win11预览版
  • win11中文安装包
  • cannot read properties null
  • undetected_chromedriver下载
  • typescript ??
  • 公司登记注册费每年都要交吗
  • 非关联企业借款利息扣除
  • php是面向过程还是面向对象
  • thinkphp pathinfo
  • VUE-CLI/VUE-ROUTER
  • mysql分区实现
  • 公章盖的字不完整有效吗
  • 在建工程账务核算及处理
  • 个体户怎么交医保社保
  • 差旅费具体包括哪些
  • 基本户和零余额可以是一个账号么
  • sql2008用户sa登录失败
  • 利润分配怎么分配比例
  • 现金收支月报表
  • 九月份个人所得税的调整
  • 公司垫付生育津贴后,社保局未报销给公司
  • 出口免税进项税怎么处理
  • 退回现金会计分录
  • 每个月计提工资没有发怎么办
  • 公司出售自建厂房
  • 行程单发票抬头是什么意思
  • 企业什么情形必须签无固定期限合同
  • 外贸整个流程图
  • 安装sql2000sp4提示挂起
  • sqlserver 教程
  • windows vista安装光盘进入dos
  • windowsxp如何清理磁盘
  • macbookpro客人用户
  • win8怎么打开管理员命令提示符
  • 如何强制清理内存
  • win10系统附件在哪里
  • 宏基win8改win7
  • shell脚本编写
  • bat批处理命令
  • unity3d documentation
  • linux shell条件判断语句
  • nodejs处理excel
  • python中的字符型
  • jquery 插件写法
  • android课程心得体会
  • js class实现原理
  • python中的条件判断和循环语句
  • 许昌市民之家有餐厅吗在几楼
  • 柳州 税务
  • 浙江国地税联合电子税务局哪里看收到的发票
  • 地税局面试
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设