2016-03-13 84 views
2

我有一个webpack-dev-server运行,编译并提供一些Babel/React代码。我已经得到了尽可能多的client.js而不是localhost:3001Webpack/Babel/React - “Uncaught SyntaxError:意外的令牌:”

但是当我尝试,包括在我的HTML脚本,我得到以下错误在Chrome的开发者控制台:

routerWarning.js:19 Uncaught SyntaxError: Unexpected token : 

该行属于反应,路由器,包含下面的代码:

process.env.NODE_ENV !== 'production' ? _warning2['default'].apply(undefined, [falseToWarn, message].concat(args)) : undefined; 

首先,我没看到那行代码会导致语法错误。其次,我不明白它是如何进来的,因为这看起来像是一段编译(babelified)的代码给我。最后,我不知道如何解决它! :(

任何帮助,将不胜感激

+0

该代码行看起来对我有效。没有足够的信息来帮助正确。 –

+0

睡了一觉后,我明白了!不管怎么说,还是要谢谢你。 – Koen

+0

很酷。你可能应该接受答案。 :) –

回答

5

我用的WebPack的DefinePlugin设置process.env.BABEL_ENV这样的:

new DefinePlugin({ 
    'process.env': { 
    BABEL_ENV: JSON.stringify('client') 
    } 
}); 

这导致的WebPack与{"BABEL_ENV":"client"}更换的process.env所有实例代码。 SyntaxError是在这部分引起的,而不是在三元表达式中。

我通过设置process.env.BABEL_ENV这样来修复它:

new DefinePlugin({ 
    'process.env.BABEL_ENV': JSON.stringify('client') 
}); 
相关问题