当前位置: 首页 > 网络应用技术

源代码分析:VUE编译过程编译入口分析

时间:2023-03-09 02:27:26 网络应用技术

  VUE中的数据渲染了页面的整个过程。在此之前,我们介绍了它,请单击此处。编译过程是为了编译我们的模板以生成渲染函数。因此,您为什么需要编译,因为模板模板中有许多说明(例如@click,v-for等),无法识别本机JS.NEXT,让我们分析vue汇编过程:

  我们之前分析的安装过程中有这样的逻辑。编译功能是执行编译的函数。我们定义的模板被传输为参数,并生成渲染函数。让我们看一下汇编功能:

  汇编功能是在SRC/Platform/Web/Compiler/Index.js ::中定义的。

  可以看出,通过调用CreateCompiler生成编译器。参数baseOptions是Web平台的一些配置项。继续观看src/compiler/index.js中定义的createCompiler函数:

  您可以看到此处的CreateCompiler是由CreateCompilerCreator的功能生成的。CreateCompilerCreator函数的参数是函数基础编译。它的逻辑是编译过程的核心,AST树的产生,AST树的优化以及Code的生产。LET稍后分析这三个过程。LET继续观看CreateCompilerCreator的功能,在SRC中定义/compiler/create-compiler.js:

  在这里,我们看到编译函数最终称为CreateCompileTofunctionFN,我们继续观看createCompileTofunctionFN,在src/compiler/to-function.js中定义:

  您可以看到我们有很多圈,最后找到了编译功能的功能。现在,让我们看一下此执行过程。

  最终的匿名函数是最终的渲染函数。对于模板汇编的结果,请参阅此网站https://template-explorer.vuejs.s.org/。

  到目前为止,我们显然已经汇集了入口。在下一部分中,我们将继续分析编译的核心过程!

  单击下一节

  原始:https://juejin.cn/post/7094837500497100807