网站建设 之 jojo jox

news/2024/11/25 20:44:48/

React源代码解析(1):jsx语法是如何解析 - 掘金 (juejin.cn)

jsx是用babel插件转译的

从零开始编写一个babel插件 - 掘金 (juejin.cn)

在这里,我主要想强调一下babel参数的配置,如果我写了一个名叫fiveone的babel插件,我在参数中这么配置
    {presets:["react-app", "es2015"],plugins:[["fiveone", {libraryName:"lodash"}],["transform-runtime", {}]],}起作用的顺序为fiveone->transform-runtime->es2015->react-app
复制代码

编译顺序为首先plugins从左往右然后presets从右往左

解释一下plugin如何起作用?

  1. babylon解释器把代码字符串转化为AST树, 例如import {uniq, extend, flatten, cloneDeep } from "lodash"转化为AST树

  1. babel-traverse对AST树进行解析遍历出整个树的path.

  1. plugin转换出新的AST树.

  1. 输出新的代码字符串 文献地址

我们要编写的plugin在第三步.通过path来转换出新的AST树?下面我们就开始如何进行第三步!

首先我们需要安装二个工具babel-core和babel-types;

npm install --save babel-core babel-types;

  1. babel-core提供transform方法将代码字符串转换为AST树

  1. babel-types提供各种操作AST节点的工具库

明白了,基本上就是汇编原理那一类,我可太懂了


http://www.ppmy.cn/news/504997.html

相关文章

JoJoGAN 实践

JoJoGAN: One Shot Face Stylization. 只用一张人脸图片,就能学习其风格,然后迁移到其他图片。训练时长只用 1~2 min 即可。 codepaper 效果: 主流程: 本文分享了个人在本地环境(非 colab)实践 JoJoGAN 的…

JOJO替身分析

《JOJO冒险奇遇》替身分析 PART III 替身中文名/替身英文名/本体中文名/替身能力 白金之星/PLATINUM/空条承太郎/ 正统的全面型 长发巨人形象,前期没有什么特别的替身能力,但是在速度、反应、力量、动作的精确度上都是最强,而且综合实力在所…

《项目实战》构建SpringCloud alibaba项目(三、构建服务方子工程store-user-service)

系列文章目录 构建SpringCloud alibaba项目(一、构建父工程、公共库、网关) 构建SpringCloud alibaba项目(二、构建微服务鉴权子工程store-authority-service) 构建SpringCloud alibaba项目(三、构建服务方子工程stor…

Excel根据颜色求和与计数

文章目录 一、需求二、实现方法1.代码2.创建自定义函数3.使用函数 三、参考资料 一、需求 一个Excel中有不同颜色标记的单元格,统计的时候,需要按照颜色进行统计。 人工来做肯定是不可能了,借助Excel的功能好像也没有思路,其实这…

大量打印怎么省钱,数量多怎么打印便宜

如果有大量的文件资料需要打印,比如办公常用的重要资料,亦或者是学习方面的备考资料,想要打印这些资料时,大家都想节省一些打印的费用。对于大量的资料需要打印时怎么打印比较便宜呢? 如果想要节省打印的费用&#xf…

网上打印书要多少钱?

作为一名教师,不仅要担负教学生成长的责任,还要为学生考虑如何在学习中做好复习,为了方便学生的日常复习,不少教师会将一些电子类的复习资料打印出来便于学生查看。为节约打印的费用,不少教师会将搜集到的学习资料在网…

哪里打印文件的价格比较便宜?

如果咨询关于打印价格的问题,这要根据大家选择的打印平台来决定,不同的打印平台打印文件的价格也是不一样的。现在随着科技的不断发展,打印文件不仅可在实体图文打印店进行打印,还可以选择在网上进行打印。 大多数实体打印店打印…

24小时自助打印店有哪些?

近来在备考研究生考试,每隔一段时间就要打印一些资料用于备考,每次去学校的打印店进行打印,光排队就要耗费半个小时的时间,如果打印过程中再遇到机器故障,一次打印就要花费一个小时的时间,这真的是太浪费我…