I have problem with changing store's state. I want to set loggedIn and storeNum in login.js but when I call 'changeLoggedIn(true)' and 'setStoreNum(1)', the previously called value is changed to undefined.
Please give me advise to set both value together without undefined.
Thank you.
reducer.js
import { CHANGE_LOGGED_IN, SET_STORE_NUM } from './actions';
const defaultState={
loggedIn: false,
storeNum: 0,
}
const loggedInReducer = ( state = defaultState, action) => {
switch (action.type) {
case CHANGE_LOGGED_IN:
return{
loggedIn: action.loggedIn
}
case SET_STORE_NUM:
return{
storeNum: action.storeNum
}
default: return state;
};
};
export default loggedInReducer;
actions.js
export const SET_STORE_NUM = 'SET_STORE_NUM'
export const changeLoggedIn = (loggedIn) => ({
type: CHANGE_LOGGED_IN,
loggedIn: loggedIn,
});
export const setStoreNum = (storeNum) => ({
type: SET_STORE_NUM,
storeNum: storeNum,
})
login.js
export default connect(
state => ({
loggedIn: state.loggedIn,
storeNum: state.storeNum
}),
dispatch => ({
changeLoggedIn: (loggedIn) => dispatch(changeLoggedIn(loggedIn)),
setStoreNum: (storeNum) => dispatch(setStoreNum(storeNum))
})
)(Login);
