web前端webpack

如何配置 babel

2019-02-12  本文已影响4人  侬姝沁儿

在此之前你需要首先了解一下什么是babel,以及babel的使用指南;如果你需要其他babel的版本,还请参考[https://babel.docschina.org/versions]

babel 英文
babel 中文
babel7 中文

配置 Babel

Babel是可以配置!许多其他工具具有类似的配置:ESLint (.eslintrc), Prettier (.prettierrc)。

允许使用所有Babel API选项。然而,如果该选项需要JavaScript,您可能需要使用Javascript配置文件

你的用例是什么?

babel.config.js适合你!

.babelrc is for you!

我们建议使用babel.config.js格式。babel本身正在使用它。

babel.config.js

在项目的根目录下(package.json的位置)创建一个名为babel.config.js的文件,其中包含以下内容:


module.exports = function (api) {

 api.cache(true);

 const presets = [ ... ];

 const plugins = [ ... ];

  return {

 presets,

  plugins

 };

}

查看babel.config.js文档,以查看更多配置选项。

.babelrc

在项目的根目录下(package.json的位置)创建一个名为.babelrc的文件,其中包含以下内容:


{

 "presets": [...],

 "plugins": [...]

}

查看.babelrc文档,以查看更多配置选项。

package.json

或者,您可以选择在package.json中,使用babel键值指定.babelrc配置,如下所示:


{

  "name": "my-package",

  "version": "1.0.0",

  "babel": {

 "presets": [ ... ],

 "plugins": [ ... ],

 }

}

.babelrc.js

与.babelrc的配置结构相同,但你可以用JavaScript编写它。


const presets = [ ... ];

const plugins = [ ... ];

module.exports = { presets, plugins };

您可以访问任何Node.js API,例如基于流程环境的动态配置:


const presets = [ ... ];

const plugins = [ ... ];

if (process.env["ENV"] === "prod") {

  plugins.push(...);

}

module.exports = { presets, plugins };

使用 CLI (@babel/cli)


babel --plugins @babel/plugin-transform-arrow-functions script.js

查看babel-cli文档,以查看更多配置选项。

使用 API (@babel/core)


require("@babel/core").transform("code", {

 plugins: ["@babel/plugin-transform-arrow-functions"]

});

查看babel-core文档,以查看更多配置选项。

上一篇 下一篇

猜你喜欢

热点阅读