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 相关文章推荐
百度Popup.js弹出框进化版 拖拽小框架发布 兼容IE6/7/8,Firefox,Chrome
Apr 13 Javascript
JQuery中对服务器控件 DropdownList, RadioButtonList, CheckboxList的操作总结
Jun 28 Javascript
JS密码生成与强度检测完整实例(附demo源码下载)
Apr 06 Javascript
浅谈JS中的三种字符串连接方式及其性能比较
Sep 02 Javascript
Vue Cli与BootStrap结合实现表格分页功能
Aug 18 Javascript
JS实现访问DOM对象指定节点的方法示例
Apr 04 Javascript
Vue实现移动端左右滑动效果的方法
Nov 27 Javascript
基于Bootstrap和JQuery实现动态打开和关闭tab页的实例代码
Jun 10 jQuery
layui的表单提交以及验证和修改弹框的实例
Sep 09 Javascript
Element Tooltip 文字提示的使用示例
Jul 26 Javascript
解决vue scoped html样式无效的问题
Oct 24 Javascript
详细谈谈JavaScript中循环之间的差异
Aug 23 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获取指定范围内最接近数的方法
2015/06/02 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
2019/12/02 PHP
详解php反序列化
2020/06/10 PHP
javascript hasFocus使用实例
2010/06/29 Javascript
常见JS效果之图片减速度滚动实现代码
2011/12/08 Javascript
js检查页面上有无重复id的实现代码
2013/07/17 Javascript
jQuery实现的经典滑动门效果
2015/09/22 Javascript
利用Jquery队列实现根据输入数量显示的动画
2016/09/01 Javascript
获取JavaScript异步函数的返回值
2016/12/21 Javascript
bootstrap fileinput 上传插件的基础使用
2017/02/17 Javascript
vue.js中mint-ui框架的使用方法
2017/05/12 Javascript
vue-router2.0 组件之间传参及获取动态参数的方法
2017/11/10 Javascript
5分钟学会Vue动画效果(小结)
2018/07/21 Javascript
微信小程序实现单选选项卡切换效果
2020/06/19 Javascript
利用node 判断打开的是文件 还是 文件夹的实例
2019/06/10 Javascript
微信小程序前端promise封装代码实例
2019/08/24 Javascript
Python下的subprocess模块的入门指引
2015/04/16 Python
Python实现自动登录百度空间的方法
2017/06/10 Python
详解用python实现基本的学生管理系统(文件存储版)(python3)
2019/04/25 Python
python pandas写入excel文件的方法示例
2019/06/25 Python
Python 实现微信自动回复的方法
2020/09/11 Python
Python识别验证码的实现示例
2020/09/30 Python
北美三大旅游网站之一:Travelocity加拿大
2016/08/20 全球购物
美国诺德斯特龙百货官网:Nordstrom
2016/08/23 全球购物
智利最大的网上商店:Linio智利
2016/11/24 全球购物
触发器(trigger)的功能都有哪些?写出一个触发器的例子
2012/09/17 面试题
物流专业毕业生推荐信范文
2013/11/18 职场文书
统计学专业毕业生的自我评价分享
2013/11/28 职场文书
开会迟到检讨书
2014/01/08 职场文书
总经理的岗位职责
2014/02/23 职场文书
项目施工员岗位职责
2014/03/09 职场文书
活动总结报告格式
2014/05/09 职场文书
教室标语大全
2014/06/21 职场文书
大学感恩节活动总结
2015/05/05 职场文书
寻衅滋事罪辩护词
2015/05/21 职场文书
Android 界面一键变灰 深色主题工具类
2022/04/28 Java/Android