Babel无法在我的Redux减速机中转换....在使用Babel运行Webpack时,我不断收到错误消息:
ERROR in ./src/reducers/api_reducer.js
Module build failed: SyntaxError: Unexpected token (18:15)
16 | switch(action.type) {
17 | case FETCH_MESSAGE:
> 18 | return { ...state, message: action.payload };
| ^
19 | case FETCH_EVENTS:
20 | return { ...state, eventList: action.payload };
21 | case CREATE_EVENT:
这些是我安装的依赖项:
"devDependencies": {
"babel-core": "^6.17.0",
"babel-loader": "^6.2.0",
"babel-preset-env": "^1.1.4",
"babel-preset-react": "^6.16.0",
"css-loader": "^0.26.1",
"file-loader": "^1.1.4",
"html-webpack-plugin": "^2.30.1",
"image-webpack-loader": "^3.4.2",
"rimraf": "^2.6.2",
"style-loader": "^0.13.1",
"url-loader": "^0.5.9",
"webpack": "2.2.0-rc.0",
"webpack-dev-server": "^2.2.0-rc.0"
}
我的.babelrc就是这样:
{
"presets": ["babel-preset-env", "react"]
}
有谁能告诉我为什么......不能被转化?你是怎么解决这个问题的? - 非常感谢你!
答案 0 :(得分:3)
对象休息/传播是目前的第3阶段提案,因此它不包含在babel-preset-env
中。你可以:
仅包含此.babelrc
的特定转换:
{ “插件”:[“transform-object-rest-spread”] }
包括所有第3阶段提案:
{ “预设”:[“env”,“反应”,“第3阶段”] }
答案 1 :(得分:2)
使用transform-object-rest-spread
babel的插件。
转换对象解构分配的rest属性和对象文字的扩展属性
答案 2 :(得分:2)
您正在使用目前属于第3阶段功能的object spread operator。 babel-preset-env不支持它们。您需要添加babel-preset-stage-3。