vue.js - webapp的用户信息是存在浏览器里还是存在state里?用的是框架vue和vuex

查看:262
本文介绍了vue.js - webapp的用户信息是存在浏览器里还是存在state里?用的是框架vue和vuex的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

  1. 进来是登录页,那么用户的信息是存在浏览器里还是state里?存在localStorage还是sessionStorage里?
  2. 登陆之后进入首页,是否要在进入首页之前将首页数据请求到然后存储到state里?
  3. state里的数据在刷新之后会还原,万一用户刷新了一下页面岂不是要重新登录?

公司现刚做过一个angular1的项目,每次刷新一次页面后数据就没了,用户就得重新登录,我现在做的是新项目,用vue+vuex开发的,我觉得刷新一下页面就得重新登录很不合理,但是又不知道该怎么做,请各位大佬指点一下,谢谢

解决方案

用户信息放到store里但是需要缓存到sessionStorage中,如:
store.js中:

state: {
    userInfo: sessionStorage.getItem('xxx-info');
},
mutations: {
    setUserInfo(state, info) {
        state.userInfo=info;
        sessionStorage.setItem('xxx-info', info);
    }
}

登录成功:

this.$store.commit('setUserInfo',info);

需要用户数据直接vuex中获取:

this.$store.state.userInfo;

这篇关于vue.js - webapp的用户信息是存在浏览器里还是存在state里?用的是框架vue和vuex的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆