我试图在我的reducer(react-redux)中返回以下内容并且它给我一个语法错误:
return { ...state, loginForm.email: action.payload.email }
state = { loginForm: { email: '', password: '' } } so on
我安装了babel预设的0级和es2015。这很好用:
return { ..state, loginForm: action.payload }
答案 0 :(得分:10)
因为这个键而得到错误:
loginForm.email
它不是有效的对象密钥。
像这样写:
return {
...state,
loginForm: {
...state.loginForm,
email: action.payload.email
}
}
答案 1 :(得分:1)
我想你想要这样的东西:
{ ...state, loginForm: { email: action.payload.email } }
答案 2 :(得分:1)
如果您使用的是深层嵌套对象,则其键入过多。要减少更复杂的代码,请尝试以下简单方法 newState.loginForm.email
let newState = {...state};
newState.loginForm.email = "myemail@email.com";
return newState;