我已使用npm install -g babel-cli
安装了babel并使用babel-node --version
对其进行了测试。输出为6.2.0.
然后我测试了它如下。
C:\Users\xuhang\Documents\work\CDT\cdt3.0\babel>babel-node
> console.log([1,2,3].map(x => x * x))
repl:1
console.log([1, 2, 3].map(x => x * x));
^^
SyntaxError: Unexpected token =>
at Object.exports.runInThisContext (vm.js:73:16)
at _eval (C:\Users\xuhang\AppData\Roaming\npm\node_modules\babel-cli\lib\_b
abel-node.js:102:26)
at REPLServer.replEval (C:\Users\xuhang\AppData\Roaming\npm\node_modules\ba
bel-cli\lib\_babel-node.js:187:14)
at bound (domain.js:254:14)
at REPLServer.runBound [as eval] (domain.js:267:12)
at REPLServer.<anonymous> (repl.js:279:12)
at REPLServer.emit (events.js:107:17)
at REPLServer.Interface._onLine (readline.js:214:10)
at REPLServer.Interface._line (readline.js:553:8)
at REPLServer.Interface._ttyWrite (readline.js:830:14)
>
你能告诉我console.log([1,2,3].map(x => x * x))
的错误吗?
另一个类似的问题如下。我很难学习babel,最初的测试都失败了。
目录来源中的内容是下面React提供的官方样本中的example.js
。
https://facebook.github.io/react/docs/tutorial.html
C:\Users\xuhang\Documents\work\CDT\cdt3.0\babel>babel source/ --watch --out-dir
build/
SyntaxError: source/example.js: Unexpected token (17:6)
15 | var rawMarkup = marked(this.props.children.toString(), {sanitize: tru
e});
16 | return (
> 17 | <div className="comment">
| ^
18 | <h2 className="commentAuthor">
19 | {this.props.author}
20 | </h2>
答案 0 :(得分:3)
您已忘记创建.babelrc
文件。 Babel的Pre 6.x版本包含一些Babel的预设,可以开箱即用地编译代码,在6.x中它没有,所以你需要安装你想要的预设,在你的情况下你需要两个:babel-preset-es2015
和babel-preset-react
。
安装完毕后,npm install babel-preset-es2015 babel-preset-react
将其添加到.babelrc
文件中
{
"presets": ["es2015", "react"]
}