import Cookies from 'js-cookie'
|
import userApi from '@/api/user'
|
// initial state
|
const state = {
|
userName: Cookies.get('XzsStudentUserName'),
|
userInfo: Cookies.get('XzsStudentUserInfo'),
|
imagePath: Cookies.get('XzsStudentImagePath'),
|
messageCount: 0
|
}
|
|
// actions
|
const actions = {
|
initUserInfo ({ commit }) {
|
userApi.getCurrentUser().then(re => {
|
commit('setUserInfo', re.response)
|
})
|
},
|
getUserMessageInfo ({ commit }) {
|
userApi.getMessageCount().then(re => {
|
commit('setMessageCount', re.response)
|
})
|
}
|
}
|
|
// mutations
|
const mutations = {
|
setUserName (state, userName) {
|
state.userName = userName
|
Cookies.set('XzsStudentUserName', userName, { expires: 30 })
|
},
|
setUserInfo (state, userName) {
|
state.userName = userName
|
Cookies.set('XzsStudentUserName', userName, { expires: 30 })
|
},
|
setImagePath: (state, imagePath) => {
|
state.imagePath = imagePath
|
Cookies.set('XzsStudentImagePath', imagePath, { expires: 30 })
|
},
|
setMessageCount: (state, messageCount) => {
|
state.messageCount = messageCount
|
},
|
messageCountSubtract: (state, num) => {
|
state.messageCount = state.messageCount - num
|
},
|
clearLogin (state) {
|
Cookies.remove('XzsStudentUserName')
|
Cookies.remove('XzsStudentUserInfo')
|
}
|
}
|
|
export default {
|
namespaced: true,
|
state,
|
mutations,
|
actions
|
}
|