Skip to content

Instantly share code, notes, and snippets.

@RyanCCollins
Created October 12, 2016 01:35
Show Gist options
  • Select an option

  • Save RyanCCollins/15777347d4fc2c0e2f359a62f17b03ad to your computer and use it in GitHub Desktop.

Select an option

Save RyanCCollins/15777347d4fc2c0e2f359a62f17b03ad to your computer and use it in GitHub Desktop.
App Actions
export const authenticateUser = (user) => ({
type: types.AUTHENTICATE_USER,
user,
});
export const invalidateUser = () => ({
type: types.INVALIDATE_USER,
});
export const logoutUser = () => (dispatch) => {
localStorage.setItem('user', null);
dispatch(
invalidateUser()
);
};
export const setPersistentUser = (user) => (dispatch) => {
localStorage.setItem('user', JSON.stringify(user));
dispatch(
authenticateUser(user)
);
};
export const loadPersistedUser = () => (dispatch) => {
const user = localStorage.getItem('user');
if (user) {
const parsedUser = JSON.parse(user);
dispatch(
authenticateUser(parsedUser)
);
} else {
dispatch(
invalidateUser()
);
}
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment