解决刷新页面回到登录页面
当前在 permission.js 路由拦截中是通过浏览器 localStorage 获取 token 值,但现在使用的Vuex状态管理,那我们希望通过 store 来获取 token 状态值.在 src\permission.js 中将获取 token 方式替换为从 store 状态中获取,如下:注意要import导入store。。。import store from './store'rout
·
当前在 permission.js 路由拦截中是通过浏览器 localStorage 获取 token 值,但现在使用的Vuex状态管理,那我
们希望通过 store 来获取 token 状态值.
- 在 src\permission.js 中将获取 token 方式替换为从 store 状态中获取, 如下:
注意要import导入store
。。。
import store from './store'
router.beforeEach((to, from , next) => {
// 1. 获取token
// const token = localStorage.getItem('mxg-msm-token')
const token = store.state.user.token
。。。
- 重新访问登录 http://localhost:8888/#/login ,登录后一样可以进入首页
- 刷新首页,发现会回到登录页面。因为刷新 后token状态值还原初始值 null, 所以又会要求 重新登录
- 解决刷新页面重新登录的问题,在 src\store\modules\user.js 中 token 初始值为 getToken()
import {getToken, setToken, setUser, getUser, removeToken} from '@/utils/auth'
import { login, getUserInfo, logout} from '@/api/login'
const user = {
state: {
token: getToken(),
// getToken() 作为token初始值,解决刷新页面之后token为null
user: null
},
。。。 。。。
转载自梦学谷
更多推荐
已为社区贡献2条内容
所有评论(0)