我试图用npm使用babel,我认为我需要的包是babel-core。具体来说,我想要做的是传递一串ES6代码并让它将一串转换后的代码交给我。就是这样。您认为这很简单但我无法用文档来解决这个问题。根据我的阅读,我应该能够做到这一点:
var babel = require('babel-core');
var code = 'x => x + 1';
var result = babel.transform(code);
但问题是,result是一个包含AST的对象,而不是一个字符串。我试图在该对象上运行transformFromAst,但这也不起作用。任何人都可以帮我获得真正的字符串吗?
答案 0 :(得分:5)
result.code
将包含ES5代码。 result.ast
将拥有ast。它可能看起来不像是因为你没有将任何选项传递给Babel,所以它只会不改变代码,例如。
npm install babel-preset-es2015
和
var result = babel.transform(code, {
presets: ['es2015']
});