You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
873 B
27 lines
873 B
Vue.use(Vuex);
|
|
const store = new Vuex.Store({
|
|
state: {
|
|
token: {
|
|
accessToken: localStorage.getItem("accessToken"),
|
|
refreshToken: localStorage.getItem("refreshToken")
|
|
},
|
|
permissions:[]
|
|
},
|
|
mutations: {
|
|
setState(state,data) {
|
|
state[data.key] = data.value;
|
|
},
|
|
login(state, data) {
|
|
localStorage.setItem('accessToken', data.accessToken);
|
|
localStorage.setItem('refreshToken', data.refreshToken);
|
|
state.token.accessToken = data.accessToken;
|
|
state.token.refreshToken = data.refreshToken;
|
|
},
|
|
logout(state) {
|
|
localStorage.removeItem('accessToken');
|
|
localStorage.removeItem('refreshToken');
|
|
state.token.accessToken = null;
|
|
state.token.refreshToken = null;
|
|
}
|
|
}
|
|
}); |