如何从 babel-core 中获取转译后的字符串?

How do I get the transpiled string out of babel-core?

我正在尝试将 babel 与 npm 一起使用,我认为我需要的包是 babel-core。具体来说,我想做的是将一串 ES6 代码传递给它,然后让它返回给我一串转译后的代码。而已。你会认为这很简单,但我无法通过文档来解决这个问题。根据我的阅读,我应该能够做到这一点:

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

但问题是,result 是一个包含 AST 的对象,而不是字符串。我试图在该对象上 运行 transformFromAst 但这也不起作用。谁能帮我得到实际的转译字符串?

result.code 将包含 ES5 代码。 result.ast 将有 ast。它可能看起来不像是因为你没有将任何选项传递给 Babel,所以它会原封不动地通过代码,例如

npm install babel-preset-es2015

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