start to properly use vuex

This commit is contained in:
Jakob Schrettenbrunner 2018-06-04 00:45:01 +02:00
parent 20472a903c
commit 58ad7a4b27
12 changed files with 1207 additions and 156 deletions

View file

@ -0,0 +1,34 @@
import {User} from "../../models/user";
export const userModule = {
state: {
user: null,
},
actions: {
login ({ commit }) {
commit('setUser', User.fromJWT(localStorage.getItem('token')));
},
logout ({ commit }) {
commit('unsetUser');
}
},
getters: {
getCurrentUser: function (state) {
return state.user;
},
},
mutations: {
/**
* Log in a user and store them in vuex using the local storage token.
*
* @param state
* @param user
*/
setUser: function (state, user) {
state.user = user;
},
unsetUser: function (state) {
state.user = null;
}
}
};