[英]error localStorage reducer in redux
hi i have this code for start a session, i need save the info the user in localStorage after the login 嗨,我有这段代码来开始会话,我需要在登录后将用户的信息保存在localStorage中
'use strict';
const defaultState ={
permission: localStorage.getItem('email') ? localStorage.getItem('email') : null
}
export const signInReducer = (state=defaultState, action)=>{
switch (action.type){
case 'SIGNIN_REQUEST':
return state;
case 'SIGNIN_FAILURE':
return state;
case 'SIGNIN_SUCCES':
return Object.assign({}, state, {
permission: action.payload.email ? JSON.stringify(action.payload.email) : null
})
default:
return state;
}
}
thanks for your help 谢谢你的帮助
You shouldn't save to localStorage
in your reducers. 您不应该在减速器中保存到
localStorage
。 These should be pure and have no side effects. 这些应该是纯净的,没有副作用。
Try doing it in your action creator: 尝试在动作创建者中执行以下操作:
const signInSucess = (user) => {
localStorage.setItem('permission', user)
//your code...
return { type: "SIGNIN_SUCCES", payload: user }
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.