当我尝试运行我的webpack包时,我收到此控制台错误:
BabelLoaderError: SyntaxError: Unexpected token (113:19)
111 |
112 | const render = () => ReactDOM.render(
> 113 | <TodoApp todos={...store.getState()}/>,
| ^
114 | document.getElementById("root")
115 | )
116 |
因此不了解扩展运算符语法。但是,我已在webpack.config.js
中安装了我在装载机中包含的babel-stage-2预设,如下所示:
module: {
loaders: [
{
test: path.join(__dirname, 'public'),
loader: ['babel-loader'],
query: {
presets: debug ? ['react', 'es2015', 'react-hmre', 'stage-2'] : ['react', 'es2015', 'stage-2']
}
}
]
}
我还尝试安装babel-plugin-transform-object-rest-spread
并添加到.babelrc
:
{
"plugins": ["transform-object-rest-spread"]
}
仍然收到同样的错误。
任何帮助表示赞赏!
答案 0 :(得分:2)
我对Vue项目有类似的问题。
我已添加:
{
"presets": [
["es2015", {"modules": false}],
["stage-2"]
],
"plugins": ["transform-object-rest-spread"]
}
在.babelrc
并尝试了许多事情,但似乎没有任何效果。
如警告部分preset-env plugin中所述,你应该至少有v6.19.0,我的是v6.23.0,它仍然无法正常工作。
编辑:我找到了Answer here。
我的解决方案
/*
* additional javascript loader for es6 code in node_modules that have to be transpiled also
*/
{
test: /\.jsx?$/,
include: [
NODE_MODULES + '/vuetify/src'
],
use: [
{
loader: 'babel-loader',
options: Config.babel()
}
]
}
答案 1 :(得分:0)
致电{...store.getState()}
而非todos={...store.getState()}