import { createStore } from 'vuex' const loginStatusEnum = { notLogin: 'not-login', visitor: 'visitor', wxUser: 'wxUser', } export default createStore({ state: { haveShownStartUp: true, // 暂定不使用加载页 loginStatus: loginStatusEnum.notLogin, token: '', userInfo: { userName: '', }, }, getters: { loginStatusEnum() { return loginStatusEnum } }, mutations: { recordShowStartUp(state) { state.haveShownStartUp = true }, setLoginStatus(state, value) { state.loginStatus = value }, setUserName(state, value) { state.uerInfo.userName = value }, setToken(state, value) { state.token = value localStorage.setItem('token', value) }, setUserInfo(state, value) { state.userInfo = value localStorage.setItem('userInfo', JSON.stringify(value)) if (state.userInfo.score === null) { state.userInfo.score = 0 } }, logoutCallback(state) { state.loginStatus = loginStatusEnum.notLogin state.token = '' localStorage.removeItem('token') state.userInfo = {} localStorage.removeItem('userInfo') }, }, actions: { }, modules: { } })