当前位置: 首页 > 工具软件 > .config > 使用案例 >

配置文件.babelrc和babel.config.js

边翔宇
2023-12-01

.babelrc和babel.config.js

一、前言

今天看ES6的知识发现了项目中.babelrcbabel.config.js 都是Babel的配置文件,之前没怎么研究过两者的区别,今天来学习记录下

二、学习

babel 7.x 以上开始支持两种类型的配置文件, 分别是.babelrc 和 babel.config.js

babel.config.js是在babel第7版引入的,主要是为了解决babel6中的一些问题

  • .babelrc会在一些情况下,莫名地应用在node_modules
  • .babelrc的配置不能应用在使用符号链接引用进来的文件
  • node_modules中的.babelrc会被检测到,即使它们中的插件和预设通常没有安装,也可能在Babel编译文件的版本中无效

并且支持的文件扩展名:

Babel 可以使用 Node.js 原生支持的任何文件扩展名进行配置:您可以使用.json、 .js、.cjs和.mjs, forbabel.config.json和.babelrc.jsonfiles

推荐使用场景:

  • babel.config.json
    • 你正在使用一个monorepo(可以理解为在一个项目中会有多个子工程)
    • 你希望编译node_modules以及symobllinked-project中的代码
  • .babelrc
    • 你的配置仅适用于项目的单个部分
    • 需要在子目录/文件中运行一些特定的转换,比如你可能不希望一些第三方库被转码
  • 综合推荐使用babel.config.json,Babel itself is using it

总结: 推荐使用babel.config.js来作为整个项目的babel配置,

  • .babelrc 只会影响本项目中的代码
  • babel.config.js会影响整个项目中的代码,包含node_modules中的代码
 类似资料: