user.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. export default {
  2. // 开启命名空间
  3. namespaced: true,
  4. // state 数据
  5. state: () => ({
  6. // 登录成功之后的 token 字符串
  7. token: uni.getStorageSync('token') || '',
  8. // 用户的基本信息
  9. userinfo: JSON.parse(uni.getStorageSync('userinfo') || '{}'),
  10. // 老师认证结果
  11. authentication: uni.getStorageInfoSync('authentication') || '',
  12. // 我的需求详情
  13. requireDetail: JSON.parse(uni.getStorageSync('requireDeatail') || '{}'),
  14. // 推荐人 uid 字符串
  15. recoUID: uni.getStorageSync('recoUID') || '',
  16. }),
  17. // 方法
  18. mutations: {
  19. // 更新用户的基本信息
  20. updateUserInfo(state, userinfo) {
  21. state.userinfo = userinfo
  22. // 通过 this.commit() 方法,调用 m_user 模块下的 saveUserInfoToStorage 方法,将 userinfo 对象持久化存储到本地
  23. this.commit('m_user/saveUserInfoToStorage')
  24. },
  25. // 将 userinfo 持久化存储到本地
  26. saveUserInfoToStorage(state) {
  27. uni.setStorageSync('userinfo', JSON.stringify(state.userinfo))
  28. },
  29. // 更新 token 字符串
  30. updateToken(state, token) {
  31. state.token = token
  32. // 通过 this.commit() 方法,调用 m_user 模块下的 saveTokenToStorage 方法,将 token 字符串持久化存储到本地
  33. this.commit('m_user/saveTokenToStorage')
  34. },
  35. // 将 token 字符串持久化存储到本地
  36. saveTokenToStorage(state) {
  37. uni.setStorageSync('token', state.token)
  38. },
  39. // 更新老师认证结果
  40. updateAuthentication(state, message) {
  41. state.authentication = message
  42. this.commit('m_user/saveAuthentication')
  43. },
  44. // 将老师认证结果存储到本地
  45. saveAuthentication(state) {
  46. uni.setStorageSync('authentication', state.authentication)
  47. },
  48. // 更新我的需求详情
  49. updateRequireDetail(state, requireDetail) {
  50. state.requireDetail = requireDetail
  51. this.commit('m_user/saveRequireDetail')
  52. },
  53. // 将我的需求存储到本地
  54. saveRequireDetail(state) {
  55. uni.setStorageSync('requireDetail', state.requireDetail)
  56. },
  57. // 更新 recoUID 字符串
  58. updateRecoUID(state, recoUID) {
  59. state.recoUID = recoUID
  60. // 通过 this.commit() 方法,调用 m_user 模块下的 saveRecoUIDToStorage 方法,将 recoUID 字符串持久化存储到本地
  61. this.commit('m_user/saveRecoUIDToStorage')
  62. },
  63. // 将 recoUID 字符串持久化存储到本地
  64. saveRecoUIDToStorage(state) {
  65. uni.setStorageSync('recoUID', state.recoUID)
  66. },
  67. },
  68. // 数据包装器
  69. getters: {
  70. // 收货详细地址的计算属性
  71. addstr(state) {
  72. if (!state.address.provinceName) return ''
  73. // 拼接 省,市,区,详细地址 的字符串并返回给用户
  74. return state.address.provinceName + state.address.cityName +
  75. state.address.countyName + state.address.detailInfo
  76. }
  77. },
  78. }