【技术实现步骤摘要】
一种前端实现多文件编译器的方法
[0001]本专利技术属于互联网前端
,尤其是涉及一种前端实现多文件编译器的方法。
技术介绍
[0002]在前端工程中,我们很多需求都是低代码的场景,比如我们有时候需要在浏览器编译并执行一些代码,还比如我们在搭建时需自定义一部分代码,这些代码需要在渲染时执行。而当我们写ES6、ES7等代码时,要在浏览器执行,就必须经过编译,目前缺少可实现多文件编译器的方法,使这些代码能够在浏览器顺利执行。
技术实现思路
[0003]有鉴于此,为克服上述缺陷,本专利技术旨在提出一种前端实现多文件编译器的方法。
[0004]为达到上述目的,本专利技术的技术方案是这样实现的:
[0005]第一方面,本专利技术提供了一种前端实现多文件编译器的方法,包括:
[0006]解析各文件,确定文件间的依赖关系;
[0007]基于依赖关系,确定对各文件的编译顺序,形成编译队列;
[0008]对编译队列上的各文件进行单独隔离,按照编译顺序,前后相邻的文件之间建立引用关系 ...
【技术保护点】
【技术特征摘要】
1.一种前端实现多文件编译器的方法,其特征在于,包括:解析各文件,确定文件间的依赖关系;基于依赖关系,确定对各文件的编译顺序,形成编译队列;对编译队列上的各文件进行单独隔离,按照编译顺序,前后相邻的文件之间建立引用关系;将编译顺序和各文件编译成可执行程序,组成字符串,供编译使用。2.根据权利要求1所述的前端实现多文件编译器的方法,其特征在于,解析各文件,确定文件间的依赖关系,包括:将文件代码编译成AST抽象语法树,分析各文件的import依赖,用哈希表来存储,分析得到的依赖关系按顺序存放到数组里面。3.根据权利要求1所述的前端实现多文件编译器的方法,其特征在于,对编译队列上的各文件进行单独隔离,按照编译顺序,前后相邻的文件之间建立引用关系,包括:将每个文件的内容转成一个闭包,使每个文件的变量互不影响;通过建立接口的方式,使文件间建立引用关系。4.根据权利要求3所述的前端实现多文件编译器的方法,其特征在于,通过建立接口的方式,使文件间建立引用关系,包括:创建全局变量对象modu...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。