user.js 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. import { wechatAuthLogin, mobileLogin } from '@/services/api/auth.js'
  2. import { wxLogin } from '@/common/auth.js'
  3. import { setStorage } from '@/common/storage.js'
  4. import { objAssign } from '@/common/utils.js'
  5. const state = {
  6. // 用户信息
  7. headImgUrl: '',
  8. mobile: '',
  9. nickName: '',
  10. openId: 'oFFip5SgfBKMHxgZLInIBTHdPGuk',
  11. userId: 0,
  12. userIdentity: -1, // 用户类型
  13. inviteUserId: '' // 分享者用户ID
  14. }
  15. const mutations = {
  16. SET_USER_INFO: (state, userInfo) => {
  17. objAssign(state, userInfo)
  18. },
  19. SET_INVITE_USER_ID: (state, id) => {
  20. state.inviteUserId = id
  21. }
  22. }
  23. const actions = {
  24. // 微信自动登录
  25. async wxAutoLogin({ commit }) {
  26. try {
  27. const code = await wxLogin()
  28. const res = await wechatAuthLogin({ code })
  29. const data = JSON.parse(res.data)
  30. commit('SET_USER_INFO', data)
  31. setStorage('USER_INFO', data)
  32. return Promise.resolve(data)
  33. } catch (e) {
  34. console.log(e)
  35. return Promise.reject(e)
  36. }
  37. },
  38. // 手机号注册登录
  39. async register({ commit }, resigterData) {
  40. try {
  41. const res = await mobileLogin(resigterData)
  42. // return Promise.resolve(data) TODO
  43. console.log(res)
  44. } catch (e) {
  45. console.log(e)
  46. return Promise.reject(e)
  47. }
  48. },
  49. }
  50. export default {
  51. namespaced: true,
  52. state,
  53. mutations,
  54. actions
  55. }