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.
36 lines
1.1 KiB
36 lines
1.1 KiB
Vue.use(Vuex);
|
|
const store = new Vuex.Store({
|
|
state: {
|
|
accessToken: localStorage.getItem("accessToken"),
|
|
refreshToken: localStorage.getItem("refreshToken"),
|
|
user: null,
|
|
products: null,
|
|
nodes: null,
|
|
},
|
|
mutations: {
|
|
setToken(state, data) {
|
|
state.accessToken = data.accessToken;
|
|
localStorage.setItem("accessToken", state.accessToken);
|
|
state.refreshToken = data.refreshToken;
|
|
localStorage.setItem("refreshToken", state.refreshToken);
|
|
},
|
|
logout(state) {
|
|
state.accessToken = null;
|
|
state.refreshToken = null;
|
|
localStorage.removeItem('accessToken');
|
|
localStorage.removeItem('refreshToken');
|
|
},
|
|
setUser(state, user) {
|
|
state.user = user;
|
|
},
|
|
setProducts(state, products) {
|
|
state.products = products;
|
|
},
|
|
setNodes(state, nodes) {
|
|
state.nodes = nodes;
|
|
},
|
|
setNode(state, node) {
|
|
findByNumberCopy(state.nodes, node);
|
|
},
|
|
},
|
|
}) |