ES7双冒号绑定语法解析错误

时间:2015-10-22 07:30:35

标签: reactjs babeljs

我在babel的网站上尝试过双冒号操作符 https://babeljs.io/repl 但是当我尝试使用babel-core和babel-loader在我的代码中解析相同的内容时,会出现以下错误。

Module build failed: SyntaxError: /home/dev/housing-litmus/client/components/StepBuilder.jsx: Unexpected token (30:46)
  28 |              {
  29 |                  steps.map(function(step){
> 30 |                  return <StepField id={step._id} addStep={::self.addStep} removeStep={self.removeStep.bind(self)} commands={commands}/>
     |          



at Parser.pp.raise (/home/dev/node_modules/babel-core/node_modules/babylon/lib/parser/location.js:24:13)
at Parser.pp.unexpected (/home/dev/node_modules/babel-core/node_modules/babylon/lib/parser/util.js:82:8)
at Parser.pp.parseExprAtom (/home/dev/node_modules/babel-core/node_modules/babylon/lib/parser/expression.js:425:12)
at Parser.parseExprAtom (/home/dev/node_modules/babel-core/node_modules/babylon/lib/plugins/jsx/index.js:412:22)

我已尝试将babel更新为最新的npm版本。

1 个答案:

答案 0 :(得分:6)

请注意,在该repl链接中,除非您勾选&#34; experimental&#34;否则它不会起作用。你必须打开experimental flag(第0阶段)。您可以在链接显示的CLI中执行此操作,也可以在.babelrc中执行此操作,或者如果您使用的是webpack,则可以将其添加到query对象下的加载程序配置中。