be966eff
jack
1.添加文件
|
1
2
3
4
5
|
import { login, logout, getInfo } from '@/api/user'
import {
getToken,
setToken,
removeToken,
|
51f45a49
jack
1.添加账号管理交互
|
6
7
8
9
10
|
removeUser,
setLogoLayout,
saveuser,
setuserinfo,
removeuserinfo
|
be966eff
jack
1.添加文件
|
11
12
13
14
15
16
17
18
|
} from '@/utils/auth'
import { resetRouter } from '@/router'
const getDefaultState = () => {
return {
token: getToken(),
name: '',
avatar: '',
|
51f45a49
jack
1.添加账号管理交互
|
19
20
|
logoLayout: '',
userInfo: {}
|
be966eff
jack
1.添加文件
|
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
}
}
const state = getDefaultState()
const mutations = {
RESET_STATE: state => {
Object.assign(state, getDefaultState())
},
SET_TOKEN: (state, token) => {
state.token = token
},
SET_NAME: (state, name) => {
state.name = name
},
SET_AVATAR: (state, avatar) => {
state.avatar = avatar
},
SET_LOGOLAYOUT: (state, logoLayout) => {
state.logoLayout = logoLayout
|
51f45a49
jack
1.添加账号管理交互
|
41
42
43
|
},
SET_USERINFO: (state, userInfo) => {
state.userInfo = userInfo
|
be966eff
jack
1.添加文件
|
44
45
46
47
48
49
50
51
52
53
54
|
}
}
const actions = {
// user login
login({ commit }, userInfo) {
const { username, password } = userInfo
return new Promise((resolve, reject) => {
login({ username: username.trim(), password: password })
.then(response => {
const { data } = response
|
51f45a49
jack
1.添加账号管理交互
|
55
56
|
console.log(data)
commit('SET_TOKEN', data.username)
|
be966eff
jack
1.添加文件
|
57
|
commit('SET_LOGOLAYOUT', data.logoLayout)
|
51f45a49
jack
1.添加账号管理交互
|
58
59
60
|
commit('SET_USERINFO', JSON.stringify(data))
setuserinfo(JSON.stringify(data))
setToken(data.username)
|
be966eff
jack
1.添加文件
|
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
setLogoLayout(data.logoLayout)
resolve(response)
})
.catch(error => {
reject(error)
})
})
},
// get user info
getInfo({ commit, state }) {
return new Promise((resolve, reject) => {
getInfo(state.token)
.then(response => {
const { data } = response
if (!data) {
reject('Verification failed, please Login again.')
}
const { name, avatar } = data
commit('SET_NAME', name)
commit('SET_AVATAR', avatar)
resolve(data)
})
.catch(error => {
reject(error)
})
})
},
|
51f45a49
jack
1.添加账号管理交互
|
93
94
95
96
97
98
99
100
|
saveuser({ commit }, userInfo) {
console.log(userInfo)
const { username, password } = userInfo
const param = { username: username.trim(), password: password }
console.log(param)
saveuser(JSON.stringify(param))
},
|
be966eff
jack
1.添加文件
|
101
102
103
104
105
106
|
// user logout
logout({ commit, state }) {
return new Promise((resolve, reject) => {
logout(state.token)
.then(() => {
removeToken() // must remove token first
|
51f45a49
jack
1.添加账号管理交互
|
107
108
|
removeUser()
removeuserinfo()
|
be966eff
jack
1.添加文件
|
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
resetRouter()
commit('RESET_STATE')
resolve()
})
.catch(error => {
reject(error)
})
})
},
// remove token
resetToken({ commit }) {
return new Promise(resolve => {
removeToken() // must remove token first
commit('RESET_STATE')
resolve()
})
}
}
export default {
namespaced: true,
state,
mutations,
actions
}
|