store.js
1.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
import Vue from 'vue'
import Vuex from 'vuex'
import createPersistedState from 'vuex-persistedstate'
Vue.use(Vuex)
export default new Vuex.Store({
strict: true,
plugins: [
createPersistedState()
],
state: {
token: null,
data: null,
isUserLoggedIn: false,
id: null,
role: null,
schoolId: null
},
// serve as the one and only way to change the state of the data in the state object
mutations: {
setToken(state, token) {
state.token = token
//state.isUserLoggedIn = !!(token)
if (token != null) {
state.isUserLoggedIn = true
} else {
state.isUserLoggedIn = false
}
},
setUser(state, data) {
state.data = data
},
Id(state, id) {
state.id = id
},
Role(state, role) {
state.role = role
},
SchoolId(state, schoolId) {
state.schoolId = schoolId
}
},
//Action methods are referred to as being "dispatched"
actions: {
setToken({ commit }, token) {
commit('setToken', token)
},
setUser({ commit }, data) {
commit('setUser', data)
},
Id({ commit }, id) {
commit('Id', id)
},
Role({ commit }, role) {
commit('Role', role)
},
SchoolId({ commit }, schoolId) {
commit('SchoolId', schoolId)
}
}
})