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