logion.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. import Vue from 'vue'
  2. import Vuex from 'vuex'
  3. Vue.use(Vuex)
  4. const store = new Vuex.Store({
  5. state: {
  6. hasLogin: false, //代表用户授权头像等信息
  7. sessionId:'',
  8. successlogion: false, // 同意授权手机号 成功登录
  9. getcode: {}, // code 后获取的token session_key等值
  10. //showModal: false, //登录授权弹窗
  11. userInfo: {},
  12. beginload: false,
  13. },
  14. mutations: {
  15. login(state, provider) {
  16. console.log(provider);
  17. state.userInfo = provider;
  18. uni.setStorage({//缓存用户登陆信息
  19. key: 'userInfo',
  20. data: provider
  21. })
  22. console.log(state.userInfo);
  23. },
  24. beginload(state, provider) {
  25. state.beginload = provider
  26. uni.setStorage({//缓存用户登陆信息
  27. key: 'beginload',
  28. data: provider
  29. })
  30. },
  31. setcode(state, provider) {
  32. state.getcode = provider;
  33. uni.setStorage({//缓存用户登陆信息
  34. key: 'getcode',
  35. data: provider
  36. })
  37. console.log(state.getcode);
  38. },
  39. setOpenid(state, provider) {
  40. state.sessionId = provider;
  41. uni.setStorage({//缓存用户登陆状态
  42. key: 'sessionId',
  43. data: provider
  44. })
  45. },
  46. showDialog(state, status) {
  47. state.hasLogin = status;
  48. uni.setStorage({
  49. key: 'hasLogin',
  50. data: status
  51. })
  52. console.log(state.hasLogin);
  53. },
  54. islogionsuccess(state,provider) {
  55. state.successlogion = provider;
  56. uni.setStorage({
  57. key: 'successlogion',
  58. data: provider
  59. })
  60. console.log(state.successlogion);
  61. },
  62. logout(state) {
  63. state.hasLogin = false;
  64. state.userInfo = {};
  65. state.getcode = {};
  66. state.sessionId = '';
  67. uni.removeStorage({
  68. key: 'userInfo'
  69. })
  70. uni.removeStorage({
  71. key: 'getcode'
  72. })
  73. uni.removeStorage({
  74. key: 'sessionId'
  75. })
  76. }
  77. },
  78. // actions: {
  79. // // lazy loading openid
  80. // getUserOpenId: async function ({
  81. // commit,
  82. // state
  83. // }) {
  84. // return await new Promise((resolve, reject) => {
  85. // if (state.openid) {
  86. // resolve(state.openid)
  87. // } else {
  88. // uni.login({
  89. // success: (data) => {
  90. // commit('login')
  91. // setTimeout(function () { //模拟异步请求服务器获取 openid
  92. // const openid = '123456789'
  93. // commit('setOpenid', openid)
  94. // resolve(openid)
  95. // }, 1000)
  96. // },
  97. // fail: (err) => {
  98. // console.log('uni.login 接口调用失败,将无法正常使用开放接口等服务', err)
  99. // reject(err)
  100. // }
  101. // })
  102. // }
  103. // })
  104. // }
  105. // }
  106. })
  107. export default store