如何使用 babel CLI 编译文件

How to compile a file with babel CLI

我正在尝试使用 babel CLI

编译一个简单的 es6 文件

给出以下详细信息:出了什么问题?

$ node --version
v5.0.0

$ npm --version
3.3.6

$ npm init
$ npm install --save-dev babel-cli

$ echo -e 'import url from "url"\nconsole.log(`2+2=${2+2}`)' > script.js

$ ./node_modules/.bin/babel  script.js 
import url from "url";
console.log(`2+2=${ 2 + 2 }`);

换句话说:我输入 ES6,然后输出 ES6(尽管间距略有不同,并且添加了分号)。我期待看到导入转换为需求,并看到我的反引号消失。

也就是:我要ES5出来.

我需要做哪些不同的事情?

Babel 版本 6 发布 "without any default transforms"。您可以在 this blog post

中阅读有关更改的更多信息

要将 es6 转换为 es5,您需要执行以下操作:

  1. 运行 npm i --save-dev babel-preset-es2015

  2. 使用以下内容在项目的根目录中创建一个 .babelrc 文件:

    {

       "presets": ["es2015"]
    

    }

您可以在此基础上进行很多配置,但这至少可以让您入门。

诀窍:需要将 --presets "es2015" 作为参数传递给 babel。

如:

$ ./node_modules/.bin/babel  --presets "es2015" script.js 
"use strict";

var _url = require("url");

var _url2 = _interopRequireDefault(_url);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

console.log("2+2=" + (2 + 2));