欢迎光临散文网 会员登陆 & 注册

仿写下Vue3中的渲染器(简易版)

2022-03-13 11:50 作者:忘魂儿  | 我要投稿

首先,我们要清楚渲染器是干嘛的?模板经过编译生成渲染函数,而渲染函数的返回值就是虚拟Dom也就是描述真实Dom的js对象,而我们的渲染器要做的就是把虚拟Dom递归遍历按照原生Api完成对Dom的创建,也就是真实Dom的生成,也是最终页面的产生

目前先考虑两种情况,一种是直接挂载Dom元素,而另一种则是挂载组件

让我们先来试验着写一下挂载Dom元素的渲染器

文本节点的挂载

还有孩子挂载

接着来试验着写一下挂载组件

组件的实质就是一组对虚拟Dom元素的封装

如果我们将组件看成函数的话,那它的返回值不就是它所对应的虚拟Dom嘛

这么一看的话,好像两者有联系了,开始解耦,建立独立函数myRender

完善下


仿写下Vue3中的渲染器(简易版)的评论 (共 条)

分享到微博请遵守国家法律