当前位置: 首页 > news >正文

vue3 渲染一个后端返回的图片字段渲染、table表格内放置图片

一、后端直接返回图片url

当图片字段接口直接返回的是图片url,可以直接放到img标签上

   <img v-if="thumbLoader" class="r-image-loader-thumb" :src="resUrl" />

二、当图片字段接口直接返回的是图片Id

那么就需要去拼一下图片链接

调用下接口吧返回的id传过去拼接即可

<img v-if="thumbLoader" class="r-image-loader-thumb" :src="imgSrc" />const imgSrc = computed(() => {return `/bnc_rest/market/file/${resUrl};});

三、接口直接返回的是图片文件 

需要自行拼接


------------------------结构部分
<img v-if="thumbLoader" class="r-image-loader-thumb" :src="logo" />------------------------js部分
import { getEnterpriseLogo } from "@/api/index.js";const logo = computed(() => {let url = "";if (props.detail && props.detail.enterpriseVO && props.detail.enterpriseVO.enterpriseId) {//在api.js文件里写个方法调用 或者直接拼//1.调用的方法url = getEnterpriseLogo(props.detail.enterpriseVO.enterpriseId);//2.直接在当前页面拼接// url = `/bnc_rest/org/orgunits/${props.detail.enterpriseVO.enterpriseId}/logo`;}return url;
});

api/index.js文件

/*** 获取企业logo*/
export const getEnterpriseLogo = id => {return `/bnc_rest/org/orgunits/${id}/logo`;
};

相当于一个预览接口

/*** 预览文件* @param {string} fileId 文件id*/
function purview(id) {window.open(`/bnc_rest/market/file/${id}`);
}

四、table表格里去放置图片字段

用的ui组件库为arco-deiagn vue 组件库

 <a-tablecolumn-resizable:bordered="{ headerCell: true, wrapper: false }":data="rtableTableData":scrollbar="false":pagination="false":row-selection="rowSelection"@row-click="rowClick"v-model:selected-keys="selectedKeys":row-key="rowKey"v-bind="{ ...OtherProps }":scroll="scrollConfig"@select="rowSelect"@select-all="rowAllSelect":span-method="spanMethod"ref="tableRef"><template #summary-cell="{ column, record }"><div>{{ record[column.dataIndex] }}</div></template><template #columns><a-table-column align="left" title="序号" v-if="showSeq" :width="showSeqWidth" class="first"><template #cell="{ rowIndex }">{{ currentPageStart + rowIndex }}</template></a-table-column><a-table-columnv-for="(c, i) in columns":width="c.width ? c.width : i + 1 < columns.length ? 120 : undefined":align="c.align ? c.align : 'left'":title="c.title":data-index="c.dataIndex":fixed="c.fixed ? c.fixed : ''":key="i"><template #cell="{ rowIndex, record, column }"><!-- 自定义单元格内容 --><slot:name="c.slotName ? c.slotName : c.dataIndex":rowIndex="rowIndex":record="record":cell="record[column.dataIndex]"><!-- 图片 --><template v-if="c.type && c.type == 'img'"><RImagev-if="record[column.dataIndex]"fit="cover"height="32"width="100%":src="record[column.dataIndex]"show-loaderclass="r-table-content-img"></RImage><span v-else>-</span></template><!-- 附件 --><template v-else-if="c.type && c.type == 'file'"><RLink v-model="record[column.dataIndex]" v-if="record[column.dataIndex]"></RLink><span v-else>-</span></template><div v-else>{{ formatterCell(record, c) }}</div></slot></template></a-table-column></a-table>

此处为表格内单元格的图片放置,对其设置一个表格插槽即可

http://www.lryc.cn/news/330954.html

相关文章:

  • iOS开发进阶(十三):脚手架创建iOS项目
  • 手机无线投屏到windows11电脑
  • linux 环境安装配置
  • Git常用语句
  • 坦克大战_java源码_swing界面_带毕业论文
  • JVM 记录
  • Linux学习笔记————C 语言版 LED 灯实验
  • Spring Boot 配置文件
  • IPKISS ------ 查看器件默认端口名称
  • uni-app踩坑记录
  • 【嵌入式硬件】光耦
  • 学习Fast-LIO系列代码中相关概念理解
  • React 掌握及对比常用的8个Hooks,优化及使用场景
  • DNS域名解析过程
  • MySQL数据库(数据库连接池)
  • 【C#】知识点速通
  • FTP协议
  • 前后端分离开发【Yapi平台】【Swagger注解自动生成接口文档平台】
  • Android的硬件接口HAL-2 HIDL
  • pygame--坦克大战(二)
  • 【C语言】标准输入/输出(printf, scanf, gets, puts, getchar, putchar)
  • C、C++、C#中.vscode下json文件记录
  • 2013年认证杯SPSSPRO杯数学建模B题(第二阶段)流行音乐发展简史全过程文档及程序
  • 使用ARCore深度API实现点云采集
  • 软考数据库
  • Echarts 自适应宽高,或指定宽高进行自适应
  • 体验报告:为什么Claude-3是码农和学者的新宠?
  • 接口自动化框架搭建(九):接入钉钉消息通知
  • 一、点击视频下载(通过视频url实现);二、点击下载视频按钮,视频以压缩包形式下载(但未实现压缩视频)
  • B树、B+树、哈夫曼树