今天看ES6的知识发现了项目中.babelrc
和babel.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
.babelrc
babel.config.json
,Babel itself is using it总结: 推荐使用
babel.config.js
来作为整个项目的babel配置,
.babelrc
只会影响本项目中的代码babel.config.js
会影响整个项目中的代码,包含node_modules中的代码