如何使用babel CLI编译文件

时间:2015-11-11 23:27:34

标签: node.js babeljs transpiler

我正在尝试使用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

我需要做些什么?

2 个答案:

答案 0 :(得分:10)

Babel版本6发布“没有任何默认转换”。您可以在this blog post

中详细了解更改

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

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

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

    {

       "presets": ["es2015"]
    

    }

  3. 你可以做很多配置,但至少应该让你开始。

答案 1 :(得分:1)

诀窍:需要将--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));