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 相关文章推荐
javascript TextArea动态显示剩余字符
Oct 22 Javascript
CSS JavaScript 实现菜单功能 改进版
Dec 09 Javascript
VS2008中使用JavaScript调用WebServices
Dec 18 Javascript
js实现感应鼠标图片透明度变化的方法
Feb 20 Javascript
JavaScript模版引擎的基本实现方法浅析
Feb 15 Javascript
深入对Vue.js $watch方法的理解
Mar 20 Javascript
JS设计模式之单例模式(一)
Sep 29 Javascript
微信小程序如何获取openid及用户信息
Jan 26 Javascript
使用node搭建自动发图文微博机器人的方法
Mar 22 Javascript
详解JavaScript栈内存与堆内存
Apr 04 Javascript
解决vue字符串换行问题(绝对管用)
Aug 06 Javascript
vue任意关系组件通信与跨组件监听状态vue-communication
Oct 18 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面向对象全攻略 (十一)__toString()用法 克隆对象 __call处理调用错误
2009/09/30 PHP
php面象对象数据库操作类实例
2014/12/02 PHP
php删除数组中重复元素的方法
2015/12/22 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
2020/04/04 PHP
HR vs ForZe BO3 第二场 2.13
2021/03/10 DOTA
在textarea中屏蔽js的某个function的javascript代码
2007/04/20 Javascript
jQuery代码优化 事件委托篇
2011/11/01 Javascript
使用js修改客户端注册表的方法
2013/08/09 Javascript
ExtJS4利根据登录后不同的角色分配不同的树形菜单
2014/05/02 Javascript
node.js中的fs.write方法使用说明
2014/12/15 Javascript
jQuery使用fadeout实现元素渐隐效果的方法
2015/03/27 Javascript
聊一聊JavaScript作用域和作用域链
2016/05/03 Javascript
js实现交通灯效果
2017/01/13 Javascript
javascript数组定义的几种方法
2017/10/06 Javascript
vue表单数据交互提交演示教程
2019/11/13 Javascript
将Django使用的数据库从MySQL迁移到PostgreSQL的教程
2015/04/11 Python
Python中的with语句与上下文管理器学习总结
2016/06/28 Python
python 内置函数filter
2017/06/01 Python
解决安装pycharm后不能执行python脚本的问题
2019/01/19 Python
Python批量启动多线程代码实例
2020/02/18 Python
Python selenium文件上传下载功能代码实例
2020/04/13 Python
Python3与fastdfs分布式文件系统如何实现交互
2020/06/23 Python
Python如何在bool函数中取值
2020/09/21 Python
几款Python编译器比较与推荐(小结)
2020/10/15 Python
Python 2.6.6升级到Python2.7.15的详细步骤
2020/12/14 Python
python中使用asyncio实现异步IO实例分析
2021/02/26 Python
Canvas在超级玛丽游戏中的应用详解
2021/02/06 HTML / CSS
Paul’s Boutique官网:英国时尚手袋品牌
2018/03/31 全球购物
企业员工薪酬方案
2014/06/04 职场文书
领导干部查摆“四风”问题自我剖析材料思想汇报
2014/10/05 职场文书
大足石刻导游词
2015/02/02 职场文书
毕业实习证明范本
2015/06/16 职场文书
汉语拼音教学反思
2016/02/22 职场文书
2016年党员读书月活动总结
2016/04/06 职场文书
mysql 8.0.24 安装配置方法图文教程
2021/05/12 MySQL
Win11如何查看显卡型号 Win11查看显卡型号的方法
2022/08/14 数码科技