位置: IT常识 - 正文

VUE3 之 render 函数的使用 - 这个系列的教程通俗易懂,适合自学(vue使用render)

编辑:rootadmin
VUE3 之 render 函数的使用 - 这个系列的教程通俗易懂,适合自学

目录

1. 概述

2. render 函数

3. 综述

4. 个人公众号


1. 概述

推荐整理分享VUE3 之 render 函数的使用 - 这个系列的教程通俗易懂,适合自学(vue使用render),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vuerender函数,vuerender函数,vue中render的用法,vue使用render,vue中render函数,vuerender函数,vue之render函数详解,vue之render函数详解,内容如对您有帮助,希望把文章链接给更多的朋友!

老话说的好:不用想的太多、太远,做好当天的事,知道明天要做什么就可以了。

言归正传,今天我们来聊聊 VUE 中 render 函数的使用。

2. render 函数

2.1 一个简单的例子

<body> <div id="myDiv"></div></body><script> const app = Vue.createApp({ template:` <my-h> 追风人 </my-h> ` }); app.component('my-h', { template:` <h1> <slot /> </h1> ` }); const vm = app.mount("#myDiv");</script>

 这个例子中,我们用到了之前学的 子组件 和 插槽,实现了对主组件中的文字加 h 标签的功能。

2.2 依据数据,改变 h 标签

const app = Vue.createApp({ data() { return { myLevel: 2 } }, template:` <my-h :level="myLevel"> 追风人 </my-h> ` }); app.component('my-h', { props: ['level'], template:` <h1 v-if="level===1"> <slot /> </h1> <h2 v-if="level===2"> <slot /> </h2> ` });

这个例子中,我们希望依据数据 myLevel 的值,改变主组件中文字的 h 标签,1 对应 h1,2 对应 h2。

2.3 更多的 h 标签

const app = Vue.createApp({ data() { return { myLevel: 3 } }, template:` <my-h :level="myLevel"> 追风人 </my-h> ` }); app.component('my-h', { props: ['level'], template:` <h1 v-if="level===1"> <slot /> </h1> <h2 v-if="level===2"> <slot /> </h2> <h3 v-if="level===3"> <slot /> </h3> <h4 v-if="level===4"> <slot /> </h4> <h5 v-if="level===5"> <slot /> </h5> ` });

我们希望可以有更多的 h 标签供选择,但显然这么写,非常的不优雅。

VUE3 之 render 函数的使用 - 这个系列的教程通俗易懂,适合自学(vue使用render)

2.4 使用 render 函数 简化代码

const app = Vue.createApp({ data() { return { myLevel: 6 } }, template:` <my-h :level="myLevel"> 追风人 </my-h> ` }); app.component('my-h', { props: ['level'], render() { const { h } = Vue; return h('h' + this.level, {name:"myh", id:"myh"}, this.$slots.default()) } });

这个例子中,我们使用 render 函数 代替 template。

const { h } = Vue;  这句是固定写法。

return h('h' + this.level, {name:"myh", id:"myh"}, this.$slots.default())

这句中,第一个参数 'h' + this.level 是标签,第二个参数 {name:"myh", id:"myh"} 是标签的属性,第三个参数 this.$slots.default() 是标签包裹的内容

生成的标签结果如下:<h6 name="myh" id="myh"> 追风人 </h6>

2.5 render 函数包裹更多的内容

const app = Vue.createApp({ data() { return { myLevel: 1 } }, template:` <my-h :level="myLevel"> 追风人 </my-h> ` }); app.component('my-h', { props: ['level'], render() { const { h } = Vue; return h('h' + this.level, {name:"myh", id:"myh"}, [ this.$slots.default(), h('br', {}), h('button', {onclick:"alert(123)"}, '按钮') ]) } });

 render 函数中 h 函数的第三个参数,可以是数组,例如上面的例子,生成的结果如下:

 <h1 name="myh" id="myh"> 追风人 <br><button οnclick="alert(123)">按钮</button></h1>

3. 综述

今天聊了一下 VUE 中 render 函数的使用,希望可以对大家的工作有所帮助,下一节我们继续讲 Vue 中的高级语法,敬请期待

欢迎帮忙点赞、评论、转发、加关注 :)

关注追风人聊Java,这里干货满满,都是实战类技术文章,通俗易懂,轻松上手。

4. 个人公众号

微信搜索公众号:追风人聊Java,欢迎大家关注

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

上一篇:Linux标准的文件系统知识分享(Ext2/Ext3/Ext4)(linux标准文件和链接文件)

下一篇:系统资源不足无法完成请求的服务win10解决教程(系统资源不足,无法)

  • 芒果tv怎么看手机号登录了几个客户端(芒果tv怎么看手机号登录)

    芒果tv怎么看手机号登录了几个客户端(芒果tv怎么看手机号登录)

  • 微信如何查看自己的年度账单(微信如何查看自己的群聊)

    微信如何查看自己的年度账单(微信如何查看自己的群聊)

  • 小米8微信视频支持美颜吗(小米8微信视频对方听不见)

    小米8微信视频支持美颜吗(小米8微信视频对方听不见)

  • 镜头语言有哪些(镜头语言有哪些特点)

    镜头语言有哪些(镜头语言有哪些特点)

  • 对方账号异常几天恢复(对方账号异常几天能解除)

    对方账号异常几天恢复(对方账号异常几天能解除)

  • 应用无法正常启动是什么意思(应用无法正常启动0xc000007b是什么问题)

    应用无法正常启动是什么意思(应用无法正常启动0xc000007b是什么问题)

  • 苹果手机降低白点值要不要打开(苹果手机降低白点值调多少)

    苹果手机降低白点值要不要打开(苹果手机降低白点值调多少)

  • 快手上视频怎么下载到手机(快手上视频怎么保存到手机)

    快手上视频怎么下载到手机(快手上视频怎么保存到手机)

  • 小米8麦克风孔在哪(小米8麦克风孔内有黑色东西)

    小米8麦克风孔在哪(小米8麦克风孔内有黑色东西)

  • excel2010工作簿文件的默认扩展名是(excel2010工作簿文件默认有几个工作表)

    excel2010工作簿文件的默认扩展名是(excel2010工作簿文件默认有几个工作表)

  • 文件怎么解除锁定状态(文件上锁如何解除)

    文件怎么解除锁定状态(文件上锁如何解除)

  • 腾讯视频共享设备怎么添加(腾讯视频共享设备定位的信息准确吗)

    腾讯视频共享设备怎么添加(腾讯视频共享设备定位的信息准确吗)

  • 美图秀秀能拍证件照吗(美图秀秀拍证件照)

    美图秀秀能拍证件照吗(美图秀秀拍证件照)

  • 为什么vivo手机耗电特别快(为什么vivo手机充不了电)

    为什么vivo手机耗电特别快(为什么vivo手机充不了电)

  • 电脑扬声器声音小怎么调(电脑扬声器声音小)

    电脑扬声器声音小怎么调(电脑扬声器声音小)

  • 华为手机有实况模式在哪里(华为手机有实况功能吗)

    华为手机有实况模式在哪里(华为手机有实况功能吗)

  • 手机视频怎么旋转(手机视频怎么旋转角度)

    手机视频怎么旋转(手机视频怎么旋转角度)

  • 华为nova 3可以人脸支付吗(华为nova3e支持人脸识别吗)

    华为nova 3可以人脸支付吗(华为nova3e支持人脸识别吗)

  • qq新版本耳朵什么意思(qq更新后的小耳朵图案)

    qq新版本耳朵什么意思(qq更新后的小耳朵图案)

  • oppok3怎么关闭后台

    oppok3怎么关闭后台

  • 程序属性中没有兼容性选项(打开软件窗口后如果没有出现属性面板可执行)

    程序属性中没有兼容性选项(打开软件窗口后如果没有出现属性面板可执行)

  • 2022年数学建模国赛c题论文+代码(附详解)(2022年数学建模获奖结果)

    2022年数学建模国赛c题论文+代码(附详解)(2022年数学建模获奖结果)

  • 解决 node 版本冲突问题(node更新到最新版本)

    解决 node 版本冲突问题(node更新到最新版本)

  • 织梦dedecms文章页实现多个缩略图的方法(织梦网站怎么添加关键词)

    织梦dedecms文章页实现多个缩略图的方法(织梦网站怎么添加关键词)

  • 房产税土地使用税新政策消息2023
  • 可以直接申请一般纳税人吗
  • 预付款可以抵扣进度款吗
  • 电子税务局怎么添加财务负责人
  • 企业所得税季报时间
  • 多余的实收资本可以转到其他应付款吗
  • 车辆保险费专用发票图片
  • 减半征收企业所得税的项目有哪些?
  • 银行贷款利息支出汇算清缴需要调整吗
  • 材料盘亏可收回成本吗
  • 固定资产转到别人账户
  • 补计提去年的增值税
  • 劳务费税率公式是什么
  • 营改增后手写发票还能用吗
  • 票据转让后本公司还有责任吗
  • 企业间借款利息开票税目
  • 筹备期间的开办企业是指
  • 怎么查银行账户余额
  • a公司转给b公司投资款的会计分录
  • 进口增值税发票可以抵扣吗
  • 长期待摊费用的内容和特征
  • 个人垫付汽车修理怎么办
  • 企业的污水处理设备可以间断性运行么
  • win11系统进程
  • 电脑管家如何深度访问
  • 个人社保和公积金扣款公司七个人三怎么样
  • 企业所得税怎么做帐
  • Win11怎么设置屏幕熄灭时间
  • 城建税的会计账务处理
  • 增值税进项如何取得更多
  • 以前年度应扣未扣支出
  • 境外汇款预处理是什么意思
  • php7.0新特性
  • php根据日期显示星期几
  • 为什么要划分等价类
  • 尚硅谷docker笔记
  • php rtrim
  • ps怎么把文字单独抠出来
  • 宝塔主机分销系统设计
  • 金税盘开票系统复核人员设置在哪里
  • 商业汇票的行为有哪些
  • 应交税费为负数要调整吗
  • 凭样品销售
  • SQL Server 2005 镜像构建手册(sql2005数据库同步镜像方案)
  • mysql workbench简介
  • sqlserver 删除数据
  • 小型企业需要给员工买社保吗
  • 上年未结转的成本今年可以结转吗
  • 营改增无形资产
  • 业务招待费进项税额转出会计分录
  • 非在职人员和其他人员的区别
  • 未分配利润核销不良贷款
  • 企业的期间费用包括制造费用吗
  • 出纳提取现金有金额限制吗
  • 动产什么时候发生效力
  • 固定资产计提折旧的会计科目
  • 工程物资属于存货还是固定资产
  • sql语句提取字符串中数字
  • 请问linux
  • window如何还原系统
  • linux安装syslog
  • mac视频预览图不显示
  • sudo service: command not found 报错的解决方法
  • window8系统桌面啥样的
  • linux文件权限的设置与修改
  • opengl中点画线算法
  • 安卓下的分件分享怎么弄
  • excel password recovery5.0注册码
  • android基础知识大全
  • unity 版本控制
  • python排列代码
  • python 日期运算
  • javascript的dom
  • 每天一篇经济学人
  • 发票在国家税务总局网站查不到能用吗
  • 周炜老婆是干什么的
  • 青岛契税优惠
  • 广告发布合同属于什么合同
  • 出口退税网上申报流程
  • 住宅区地下车位产权归属
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设