前端之render函数的理解

看项目代码的时候,一直会看到一个render函数,不管是react还是vue,那么这个render函数的作用具体是什么呢?

概念

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

作用

render 函数 跟 template 一样都是创建 html 模板的,但是有些场景中用 template 实现起来代码冗长繁琐而且有大量重复,这时候就可以用 render 函数

通常我们都会把我们的页面结构逻辑都写在 template 中,然后再通过vue将我们的代码转换成虚拟DOM,相比于真实DOM,虚拟DOM是通过js代码处理的,所以消耗的性能相对较小,当然大部分情况下使用 template 创建我们的HTML是可以的,但是在有些场景下,我们真的需要通Javascript的完全编程的能力来完成时,就可以用到 render函数,比之 template 更接近编译器

参数(createElement)

createElement 是 render 函数 的参数,它本身也是个函数,并且有三个参数

  1. 一个 HTML 标签名、组件选项对象,或者 resolve 了上述任何一种的一个 async 函数,类型:{ String | Object | Function },必填项
  2. 一个与模板中 attribute 对应的数据对象,类型:{ Object },可选
  3. 子级虚拟节点 ( VNodes ),由 createElement() 构建而成,也可以使用字符串来生成 "文本虚拟节点",类型:{ String | Array },可选

参考文档:

https://www.jianshu.com/p/d96bebc2bbc8

https://blog.csdn.net/libingjiedd/article/details/138509735

react render 渲染函数 - 简书

相关推荐
进击的丸子6 分钟前
APP 人脸识别增值版 SDK:Camera2 无缝接入指南
前端·前端框架·代码规范
开开心心就好10 分钟前
本地文件搜索工具,双击Ctrl就能呼出搜索
java·服务器·前端·支持向量机·ffmpeg·音视频·模拟退火算法
知了清语21 分钟前
SVG 缩放预览:F12 无法定位子元素 & 放大模糊
前端
AN22 分钟前
一个人,带着一群 AI:一个 10 年前端如何做出几十个团队在用的在线文档
前端
ByteCoder.22 分钟前
班前十分钟的清单,按体检引导单来写
java·服务器·前端·助播虾
小大宇31 分钟前
vue知识点9-标签上的ref
前端·javascript·vue.js
艺杯羹33 分钟前
告别大模型滥用与延迟失控:确定性优先法则与本地规则引擎实战
前端·人工智能·系统架构
MetWeave36 分钟前
一根杆与一张场:把你的机场画上地图
前端·数据可视化
2601_9495758641 分钟前
JSON5 跨端三方库仓颉适配全流程
前端·javascript·flutter
Java后端的Ai之路44 分钟前
【AIAgent项目-AI生成PPT-09】灵活排版
前端·vue.js·人工智能·python·powerpoint