2023-09-03
微前端
00

本文讲述微前端的发展背景,简单总监微前端的几种解决方案,讲解qiankun的使用案例和大致实现原理。

2023-09-03
前端工程化
00

本文处于草稿状态, 初步介绍了Vite的架构思路, 后续有时间还会深入研究

2023-09-01
VueJS
00

记录Vue2常见问题

2023-09-01
VueJS
00

本篇文章零散记录vue2全家桶使用及原理, 暂不打算翻新,不推荐阅读

2023-08-29
VueJS
00

本篇文章将讲解Vue3编译器,在阅读本篇文章前建议先看一下阅读一下我之前的一篇文章《AST抽象语法树》 尤其是 全网最小编译器,强烈建议跟着写一遍,读一篇可能当时理解了,然后吃过饭就忘,手写一遍代码胜过千言万语, 你的印象会深刻很多, 你会对AST有什深刻的认识,对于学习babel插件及本篇文章都很有帮助。本篇文章假设你已经对AST有一些了解了。

回归正题,先介绍本文的内容也就是Vue3编译器的思路

  1. Vue3编译器的实现思路 源代码(模版) --》 错误分析 --》 parse(生成AST) --》transform(生成JavaScriptAST) --》 generate生成目标代码
  2. 基于有限状态机的思路分析DOM模版状态转换的过程,将模版转换为AST
  3. AST转换为JavaScriptAST(增加了codegenNode属性)
  4. 根据JavaScriptAST生成render函数
  5. createApp实现 打通compileruntime