Vue 项目 login 模块
登录模块 需要做路由的守卫,有些模块是需要被保护的,必须登录才能访问。 常见手法是给路由添加 meta:{ auth:true } 来做标识,表示需要做认证。 // 路由守卫 router.beforeEach((to, from, next) => { // 判断要进入的路由是否需要认证 if(to.meta.auth) { // 通过token令牌机制判断是否已经登录 const token = localStorage.getItem('token'); if (token) { next(); // 如果登录则放行,进入路由 } else { // 跳转,并携带重定向地址 next({ path: '/login', query: { redirect: to.path } }); } } else { // 不需要验证的模块,直接放行 next(); } }); 在 Vuex 中存储登录状态 isLogin import Vue from 'vue' import Vuex from 'vuex' import user from './service/user' Vue.use(Vuex); export default new Vuex.Store({ state: { isLogin: localStorage.getItem('token') ? true :