export default { namespaced: true, state: { token: '', userId: null, memberId: null, nickname: '', familyId: null, openid: '', isLoggedIn: false }, mutations: { setToken(state, token) { state.token = token uni.setStorageSync('token', token) }, setUserInfo(state, info) { state.userId = info.userId state.memberId = info.memberId state.nickname = info.nickname state.familyId = info.familyId state.openid = info.openid state.isLoggedIn = !!info.userId }, logout(state) { state.token = '' state.userId = null state.memberId = null state.nickname = '' state.familyId = null state.openid = '' state.isLoggedIn = false uni.removeStorageSync('token') uni.removeStorageSync('openid') uni.removeStorageSync('userId') } }, actions: { initFromStorage({ commit }) { var token = uni.getStorageSync('token') var openid = uni.getStorageSync('openid') var userId = uni.getStorageSync('userId') if (token) commit('setToken', token) if (userId) { var userInfo = uni.getStorageSync('userInfo') || {} commit('setUserInfo', { userId: userId, memberId: userInfo.memberId, nickname: userInfo.nickname, familyId: userInfo.familyId, openid: openid }) } } } }