Babel 也由配置文件!许多其他工具都有类似的配置文件:ESLint (.eslintrc
)、Prettier (.prettierrc
)。
所有 Babel API 参数 都可以被配置。然而,如果该参数需要用到 JavaScript 代码,你可能需要使用 JavaScript 代码版的 配置文件。
你的使用场景是什么?
- 你是否希望以编程的方式创建配置文件?
- 你是否希望编译
node_modules
目录下的模块?
babel.config.js
文件可以满足你的的需求!
- 你是否只是需要一个简单的并且只用于单个软件包的配置?
.babelrc
文件适合你!
- The Guy Fieri is your hero?
我们建议使用
babel.config.js
格式的配置文件。Babel 本身使用的就是这种。
babel.config.js
在项目的根目录(package.json
文件所在目录)下创建一个名为 babel.config.js
的文件,并输入如下内容。
Js中文网 – 前端进阶资源教程 www.javascriptC.com ,Babel中文文档
一个致力于帮助开发者用代码改变世界为使命的平台
js
module.exports = function (api) {
api.cache(true);
const presets = [ ... ];
const plugins = [ ... ];
return {
presets,
plugins
};
}
请参阅 babel.config.js
文档 以了解更多关于配置参数的信息。
.babelrc
在你的项目中创建名为 .babelrc
的文件,并输入以下内容。
Js中文网 – 前端进阶资源教程 www.javascriptC.com ,Babel中文文档
一个致力于帮助开发者用代码改变世界为使命的平台
json
{
"presets": [...],
"plugins": [...]
}
请参阅 .babelrc 文档 以了解更多关于配置参数的信息。
package.json
或者,还可以选择将 .babelrc
中的配置信息作为 babel
键(key)的值添加到 package.json
文件中,如下所示:
json
{
"name": "my-package",
"version": "1.0.0",
"babel": {
"presets": [ ... ],
"plugins": [ ... ],
}
}
.babelrc.js
与 .babelrc
的配置相同,但你可以使用 JavaScript 编写。
js
const presets = [ ... ];
const plugins = [ ... ];
module.exports = { presets, plugins };
你还可以调用 Node.js 的任何 API,例如基于进程环境进行动态配置:
Js中文网 – 前端进阶资源教程 www.javascriptC.com ,Babel中文文档
一个致力于帮助开发者用代码改变世界为使命的平台
js
const presets = [ ... ];
const plugins = [ ... ];
if (process.env["ENV"] === "prod") {
plugins.push(...);
}
module.exports = { presets, plugins };
使用 CLI (@babel/cli
)
sh
babel --plugins @babel/plugin-transform-arrow-functions script.js
请参阅 babel-cli 文档 以了解更多关于配置参数的信息。
使用 API (@babel/core
)
js
require("@babel/core").transform("code", {
plugins: ["@babel/plugin-transform-arrow-functions"]
});
请参阅 babel-core 文档 以了解更多关于配置参数的信息。
来源:Js中文网 – 前端进阶资源教程
链接:https://www.javascriptc.com/docs/babel-manual/configuration