start to properly use vuex
This commit is contained in:
parent
20472a903c
commit
58ad7a4b27
12 changed files with 1207 additions and 156 deletions
34
resources/assets/scripts/store/modules/user.js
Normal file
34
resources/assets/scripts/store/modules/user.js
Normal 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;
|
||||
}
|
||||
}
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue