如何从babel-core中获取被转换的字符串?

时间:2015-11-26 17:14:03

标签: javascript node.js npm babeljs

我试图用npm使用babel,我认为我需要的包是babel-core。具体来说,我想要做的是传递一串ES6代码并让它将一串转换后的代码交给我。就是这样。您认为这很简单但我无法用文档来解决这个问题。根据我的阅读,我应该能够做到这一点:

var babel = require('babel-core');
var code = 'x => x + 1';
var result = babel.transform(code);

但问题是,result是一个包含AST的对象,而不是一个字符串。我试图在该对象上运行transformFromAst,但这也不起作用。任何人都可以帮我获得真正的字符串吗?

1 个答案:

答案 0 :(得分:5)

result.code将包含ES5代码。 result.ast将拥有ast。它可能看起来不像是因为你没有将任何选项传递给Babel,所以它只会不改变代码,例如。

npm install babel-preset-es2015

var result = babel.transform(code, {
    presets: ['es2015']
});