user.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. export default {
  2. namespaced: true,
  3. state: {
  4. token: '',
  5. userId: null,
  6. memberId: null,
  7. nickname: '',
  8. familyId: null,
  9. openid: '',
  10. isLoggedIn: false
  11. },
  12. mutations: {
  13. setToken(state, token) {
  14. state.token = token
  15. uni.setStorageSync('token', token)
  16. },
  17. setUserInfo(state, info) {
  18. state.userId = info.userId
  19. state.memberId = info.memberId
  20. state.nickname = info.nickname
  21. state.familyId = info.familyId
  22. state.openid = info.openid
  23. state.isLoggedIn = !!info.userId
  24. },
  25. logout(state) {
  26. state.token = ''
  27. state.userId = null
  28. state.memberId = null
  29. state.nickname = ''
  30. state.familyId = null
  31. state.openid = ''
  32. state.isLoggedIn = false
  33. uni.removeStorageSync('token')
  34. uni.removeStorageSync('openid')
  35. uni.removeStorageSync('userId')
  36. }
  37. },
  38. actions: {
  39. initFromStorage({ commit }) {
  40. var token = uni.getStorageSync('token')
  41. var openid = uni.getStorageSync('openid')
  42. var userId = uni.getStorageSync('userId')
  43. if (token) commit('setToken', token)
  44. if (userId) {
  45. var userInfo = uni.getStorageSync('userInfo') || {}
  46. commit('setUserInfo', {
  47. userId: userId,
  48. memberId: userInfo.memberId,
  49. nickname: userInfo.nickname,
  50. familyId: userInfo.familyId,
  51. openid: openid
  52. })
  53. }
  54. }
  55. }
  56. }