logion.js 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  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. //showModal: false, //登录授权弹窗
  9. userInfo: {},
  10. },
  11. mutations: {
  12. login(state, provider) {
  13. state.userInfo = provider;
  14. uni.setStorage({//缓存用户登陆信息
  15. key: 'userInfo',
  16. data: provider
  17. })
  18. console.log(state.userInfo);
  19. },
  20. setOpenid(state, provider) {
  21. state.sessionId = provider;
  22. uni.setStorage({//缓存用户登陆状态
  23. key: 'sessionId',
  24. data: provider
  25. })
  26. },
  27. showDialog(state, status) {
  28. state.hasLogin = status;
  29. uni.setStorage({
  30. key: 'hasLogin',
  31. data: status
  32. })
  33. console.log(state.hasLogin);
  34. },
  35. logout(state) {
  36. state.hasLogin = false;
  37. state.userInfo = {};
  38. state.sessionId = '';
  39. uni.removeStorage({
  40. key: 'userInfo'
  41. })
  42. uni.removeStorage({
  43. key: 'sessionId'
  44. })
  45. }
  46. },
  47. // actions: {
  48. // // lazy loading openid
  49. // getUserOpenId: async function ({
  50. // commit,
  51. // state
  52. // }) {
  53. // return await new Promise((resolve, reject) => {
  54. // if (state.openid) {
  55. // resolve(state.openid)
  56. // } else {
  57. // uni.login({
  58. // success: (data) => {
  59. // commit('login')
  60. // setTimeout(function () { //模拟异步请求服务器获取 openid
  61. // const openid = '123456789'
  62. // commit('setOpenid', openid)
  63. // resolve(openid)
  64. // }, 1000)
  65. // },
  66. // fail: (err) => {
  67. // console.log('uni.login 接口调用失败,将无法正常使用开放接口等服务', err)
  68. // reject(err)
  69. // }
  70. // })
  71. // }
  72. // })
  73. // }
  74. // }
  75. })
  76. export default store