vue render函数动态加载img的src路径操作


Posted in Javascript onOctober 26, 2020

分享一下我去如何解决vue render 中 如何正确配置img的src 路径?

一、我的项目中有俩层组件,

第一层父组件,第二层是render函数封装的组件,父组件调用render函数组件

二、render函数中需要创建<img>标签,img中的src是父组件传进来的;

src正确传进来,图片却不不显示。

三、解决办法:

首先在父组件中将图片import进来,

import empty from "./img/empty.png";

在父组件的data中声明一个变量,将empty图片引入进来

empty: empty,

父组件把图片传给子组件,子组件为

<index-grid :empty="empty"></index-grid>

子组件在props中接收empty

props: {
  empty: {
   type: String
  }
 },

子组件可以直接使用src

img.push(
    h("img", {
     style: {
      verticalAlign: "middle"
     },
     attrs: {
      src: empty
     }
    })
   );

补充知识:VUE 为img元素动态添加src及注意事项

在vue项目中,通常需要通过v-for 渲染多个img元素,当我们想给每个img元素添加他们各自的src时,需要用到vue src动态绑定

例如下面:

<img :src="typeIcon(tt.questionType)" alt="加载失败">

这里的tt 就是渲染的内容,每个img的src需要根据tt的questionType去判断

我们首先为这个判断设置一个函数,并把它绑定到img .

typeIcon:function(kind){
      switch (kind){
      case 1 : return require("../../assets/images/single_choice.png" )
      break;
      case 2 : return require( "../../assets/images/multi_choice.png" )   
      break;
      case 3 : return  require( "../../assets/images/matrix_single.png" )        
      break;
      case 4 : return  require( "../../assets/images/matrix_multi.png") 
      break;
      case 5 :return  require("../../assets/images/blank.png" )
      break;
      default: return   require( "../../assets/images/shortAnswer.png" )
    }
  },

这里我们用一个switch 语句,判断每个img对应的src 。

这里需要注意的是:

返回src时,需要在src字符串前面加上require

最后,用 :src 绑定typeIcon

<img :src="typeIcon(tt.questionType)" alt="加载失败">

以上这篇vue render函数动态加载img的src路径操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery 国际象棋棋盘 实现代码
Jun 26 Javascript
ExtJs事件机制基本代码模型和流程解析
Oct 24 Javascript
JavaScript面向对象设计二 构造函数模式
Dec 20 Javascript
不用构造函数(Constructor)new关键字也能实现JavaScript的面向对象
Jan 11 Javascript
js 距离某一时间点时间是多少实现代码
Oct 14 Javascript
Mvc提交表单的四种方法全程详解
Aug 10 Javascript
JS获取鼠标相对位置的方法
Sep 20 Javascript
基于Vue实现支持按周切换的日历
Sep 24 Javascript
vue中的计算属性的使用和vue实例的方法示例
Dec 04 Javascript
AngularJS 应用模块化的使用
Apr 04 Javascript
js使用cookie实现记住用户名功能示例
Jun 13 Javascript
vuex管理状态 刷新页面保持不被清空的解决方案
Nov 11 Javascript
vue实现简单的登录弹出框
Oct 26 #Javascript
让你30分钟快速掌握vue3教程
Oct 26 #Javascript
在vue项目中 实现定义全局变量 全局函数操作
Oct 26 #Javascript
vue3+typescript实现图片懒加载插件
Oct 26 #Javascript
原生js实现简单轮播图
Oct 26 #Javascript
vue项目开启Gzip压缩和性能优化操作
Oct 26 #Javascript
Vue检测屏幕变化来改变不同的charts样式实例
Oct 26 #Javascript
You might like
php自动跳转中英文页面
2008/07/29 PHP
php FPDF类库应用实现代码
2009/03/20 PHP
php生成xml简单实例代码
2009/12/16 PHP
php curl模拟post请求小实例
2013/11/13 PHP
分享一个超好用的php header下载函数
2014/01/31 PHP
回帖脱衣服的图片实现代码
2014/02/15 PHP
在PHP中使用FastCGI解析漏洞及修复方案
2015/11/10 PHP
tp5框架前台无限极导航菜单类实现方法分析
2020/03/29 PHP
JAVASCRIPT  THIS详解 面向对象
2009/03/25 Javascript
整理一些JavaScript的IE和火狐的兼容性注意事项
2011/03/17 Javascript
JQuery入门——移除绑定事件unbind方法概述及应用
2013/02/05 Javascript
怎么清空javascript数组
2013/05/11 Javascript
JS显示日历和天气的方法
2016/03/01 Javascript
一起学写js Calender日历控件
2016/04/14 Javascript
AngularJS封装指令方法详解
2016/12/12 Javascript
jquery radio 动态控制选中失效问题的解决方法
2018/02/28 jQuery
在 Angular-cli 中使用 simple-mock 实现前端开发 API Mock 接口数据模拟功能的方法
2018/11/28 Javascript
node app 打包工具pkg的具体使用
2019/01/17 Javascript
浅谈Vue3.0新版API之composition-api入坑指南
2020/04/30 Javascript
原生javascript如何实现共享onload事件
2020/07/03 Javascript
基于 Vue 的 Electron 项目搭建过程图文详解
2020/07/22 Javascript
[43:53]OG vs EG 2019国际邀请赛淘汰赛 胜者组 BO3 第三场 8.22
2019/09/05 DOTA
用Python实现随机森林算法的示例
2017/08/24 Python
pandas 按照特定顺序输出的实现代码
2018/07/10 Python
tensorflow模型文件(ckpt)转pb文件的方法(不知道输出节点名)
2020/04/22 Python
python实现取余操作的简单实例
2020/08/16 Python
美国在线健康和美容市场:Pharmapacks
2018/12/05 全球购物
Guess欧洲官网:美国服饰品牌
2019/08/06 全球购物
11月红领巾广播稿
2014/01/17 职场文书
安全协议书范本
2014/04/21 职场文书
应届毕业生自荐信
2014/05/28 职场文书
节约每一滴水演讲稿
2014/09/09 职场文书
幼师大班个人总结
2015/02/13 职场文书
家长对孩子的寄语
2015/02/26 职场文书
教你如何使用Python开发一个钉钉群应答机器人
2021/06/21 Python