位置: IT常识 - 正文

vue中的render函数(通俗、易懂)(vue render ref)

编辑:rootadmin
vue中的render函数(通俗、易懂) 文章目录一、初步认识render函数二、为什么使用render函数三、render函数的解析一、初步认识render函数import Vue from 'vue'import App from './App'Vue.config.productionTip = falsenew Vue({ el: '#app', render: h => h(App)})

推荐整理分享vue中的render函数(通俗、易懂)(vue render ref),希望有所帮助,仅作参考,欢迎阅读内容。

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

在使用脚手架创建vue项目的过程,我们很容易看到render这个函数,相对于其他标签,我们对于render还是比较陌生的,因此写下这篇文章你我共同理解。

二、为什么使用render函数

VUE推荐在绝大多数情况下使用template来创建我们的HTML。然而在一些场景中,我们真的需要JavaScript的完全编程的能力,这就是render函数,它比template更接近编译器。(这是官方的话) 简单来说,我们为什么要使用render函数呢?? 便是因为我们最经常使用的一个引入。

import Vue from "vue";

这一个引入你看似没有任何问题,但问题恰恰就是出在这。在不同版本的vue中,有vue.js和vue.runtime.xxx.js这两种js文件。其中(1)vue.js是完整版的vue,包含核心功能+模板解析器。(2)vue.runtime.xxx.js是运行版vue,只包含核心功能,没有模板解析器。

vue中的render函数(通俗、易懂)(vue render ref)

VUE开发者为了让我们打包的文件能尽可能小一点,在上述引入的是运行版vue。因为vue.runtime.xxx.js没有模板解析器,所以不能使用template配置项,这时候就需要使用render函数去接收到的createElement函数去指定具体内容,创建html模板。

三、render函数的解析

render 函数即渲染函数,它是个函数,它的参数 createElement 也是个函数。

上边的代码中 render: h => h(App) ,这是 ES6的箭头函数的写法,可以把 h 当作 createElement 的别名。所以这段代码其实相当于:

render: function (createElement) { return createElement(App)}

这个函数的作用就是生成一个 VNode节点,render 函数得到这个 VNode 节点之后,返回给 Vue.js 的 mount 函数,渲染成真实 DOM 节点,并挂载到根节点上。

createElement 函数的返回值是 VNode(即:虚拟节点) 有关对 VNode的介绍可以看这篇博客:VNode简介

createElement 函数的3个参数

一个 HTML 标签字符串,组件选项对象,或者解析上述任何一种的一个 async 异步函数。类型:String | Object | Function。必需。一个包含模板相关属性的数据对象,你可以在 template 中使用这些特性。类型:Object。可选。子虚拟节点 (VNodes),由 createElement() 构建而成,也可以使用字符串来生成“文本虚拟节点”。类型:String | Array。可选。new Vue({ el: '#app', render:function (createElement) { //1.普通用法 // createElement(标签,{属性},[内容]) return createElement("h2",{class:"box"},['hello',createElement("button",["按钮"])]) }})

同时createElement也可以传进去一个组件,因此

render: h => h(App)

等同于

render:function (createElement) { return createElement(App) }

render函数就到此结束了。

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

上一篇:5个 ChatGPT 功能,帮助你提升日常编码效率

下一篇:这可能是最好、最详细的VSCode开发uni-app教程吧(这可能是最好的144平米小平层户型)

  • 老项目增值税简易计税
  • 进入税金及附加怎么算
  • 债务豁免需要缴纳什么税
  • 财务软件怎么结转本年利润
  • 机票行程单改成发票可以报销吗
  • 个体户交了增值税又开负数发票怎么退税
  • 生产经营所得的税率表
  • 退休工资要缴纳税吗
  • 收到采购材料发票的会计分录
  • 增值税一般纳税人税率
  • 维修材料费主要包括
  • 印花税年度申报表怎么填
  • 销售返利是冲减收入还是做销售费用
  • 行政单位对固定资产购买保险
  • 如何生成公司开票信息二维码
  • 非营利组织免税收入孳生的银行存款利息
  • 企业所得税税率2.5% 5% 25%
  • 找私人买东西不发货算诈骗吗
  • linux耳机插拔检测
  • 代扣代缴税款的完税凭证抵扣期限
  • 招待客户住宿费可以抵扣进项税吗合理吗
  • 公司购车要交哪些税
  • window10总是自动开机
  • 如何恢复撤回的信息微信
  • PHP:highlight_file()的用法_misc函数
  • 确认坏账的会计处理
  • 增值税普通发票怎么开
  • 辅导期内的企业有哪些
  • 企业所得税职工福利扣除标准
  • 股东分红个人所得税怎么算
  • 最快的XQD存储卡是什么
  • 银行提取现金会查征信吗
  • 固定资产评估如何做
  • 残保金怎么计算公式
  • 基于stm32的小游戏
  • html零基础入门教程
  • 收到销售方的负债怎么办
  • 代理业务怎么记账
  • 职工福利费的范围有哪些
  • 公司银行开户的一些资料是公司办公室保存还是财务保存
  • 海关缴款书能重开吗
  • 一般纳税人材料票是几个点
  • 金蝶迷你版怎么打印明细账
  • 服务合同开什么发票
  • 确认资产减值损失后可以转回的
  • 建筑预缴税款什么意思
  • 委托加工的相关法律规定
  • 零售行业会计分录怎么做
  • 年终汇算清缴的税种
  • 电子汇票接收后怎么操作
  • 不同税率的产品可以开在同一张发票上吗
  • 营业账簿印花税怎么申报
  • 金税盘可以申请发票吗
  • 如何正确设置会员账号
  • centos 安装
  • WIN10系统优化技巧
  • 如何安装vmware10
  • 笔记本没有光驱怎么加装固态硬盘
  • 笔记本bios密码怎么强制清除
  • linux sed-i
  • 电脑系统怎么设置字体大小
  • win7精简版安装net4.0
  • win10怎样永久激活
  • linuxzen
  • jquery 动态添加列表元素
  • node 获取当前时间
  • 安卓沉浸式状态栏框架
  • 用js获取地址栏url参数的方法
  • linux同名文件
  • 如何处理女寝关系
  • unity3d导出fbx文件
  • javascript语法总结
  • 文件读写过程中,程序将直接与磁盘文件进行数据交换
  • python读取大txt文件
  • 如何用python做图像处理
  • jquery获取复选框是否被选中
  • android简单项目及代码
  • 重庆电子税务局怎么开电子发票
  • 厂房租赁开票税收编码
  • 北京税务迁址流程是什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设