如何利用vue路由拦截实现用户登录控制

前言

当我们开发一个 web 应用程序时,往往都需要实现用户登录功能以及页面访问权限控制等功能,其中路由拦截是实现这些功能的重要手段之一。在使用 vue 框架开发应用时,vue-router 提供了丰富的路由拦截功能,可以帮助我们轻松实现用户访问权限的控制。本文将介绍如何使用 vue-router 实现路由拦截功能,当用户未登录时跳转到登录页,已登录时跳转到首页。


需要在路由文件中加上拦截代码

// 挂载路由导航守卫
// to 将要访问的路径
// from 代表从哪个路径跳转而来
// next 是个函数,表示放行 next() 放行  next('/login') 强制跳转
router.beforeEach((to, from, next) => {
    if (to.path.startsWith('/Login/Login')) {
        window.sessionStorage.removeItem('Token')
        next()
    } else {
        let user = window.sessionStorage.getItem('Token')
        if (!user) {
            next({
                path: '/Login/Login'
            })
        } else {
            next()
        }
    }
});

效果如下

你可能感兴趣的:(vue,前端,vue)