vue路由跳转时判断用户是否登录功能

通过判断该用户是否登录过,如果没有登录则跳转到login登录路由,如果登录则正常跳转。

  一丶首先在用户登录前后分别给出一个状态来标识此用户是否登录(建议用vuex);

      简单用vuex表示一下,不会可以自己去官网多看看;

import Vue from ‘vue‘
import Vuex from ‘vuex‘

Vue.use(Vuex);

var state = {
    isLogin:0,          //初始时候给一个  isLogin=0  表示用户未登录
};

const mutations = {
    changeLogin(state,data){
        state.isLogin = data;
    }

};

二丶在用户登录时改变登录状态;

  this.$store.commit(‘changeLogin‘,‘100‘)     //登录后改变登录状态 isLogin = 100 ;

三丶重点来了;

  在你的路由入口加上导航钩子,具体什么意思看代码;

一丶设置需要校验的路由

  { path: ‘/admin‘,     component: Admin,    meta:{auth:true}  // 设置当前路由需要校验   不需要校验的路由就不用写了;不要问为什么,自己去看官网
   }   

 二丶路由跳转并校验

router.beforeEach((to,from,next) => {
    if(to.matched.some( m => m.meta.auth)){
        // 对路由进行验证
        if(store.state.isLogin==‘100‘) { // 已经登陆
            next()     // 正常跳转到你设置好的页面
        }else{
            // 未登录则跳转到登陆界面,query:{ Rurl: to.fullPath}表示把当前路由信息传递过去方便登录后跳转回来;
       next({path:‘/login‘,query:{ Rurl: to.fullPath} })      }     }else{       next()   } })
时间: 2024-11-10 10:41:40

vue路由跳转时判断用户是否登录功能的相关文章

vue路由跳转时更改页面title

一.router文件夹下的index文件中给每个path添加meta:{}: export default new Router({ routes: [ { path: '/', name: 'index', component: index, meta: { title: 'title1' } }, { path: '/studentInfo', name: 'studentInfo', component: studentInfo, meta: { title: 'title2' } }  

React-Router路由跳转时render触发两次的情况。

问题:React-Router路由跳转时,render触发两次,导致页面重复渲染. 原因:项目中使用的react-router ^3.x.x.react-router路由跳转时,this.props.location.action的值会有两种状态.这两种状态都会触发render.故页面渲染两次.   1.当点击Link时,this.props.location.action=PUSH,2.当浏览器前进后退时,this.props.location.action=POP.   所以当点击了Link

vue路由跳转的方式

vue路由跳转有四种方式 1. router-link 2. this.$router.push() (函数里面调用) 3. this.$router.replace() (用法同push) 4. this.$router.go(n) 一.不带参 1.1 router-link <router-link :to="{name:'home'}"> <router-link :to="{path:'/home'}"> //name,path都行,

详解vue 路由跳转四种方式 (带参数)

详解vue 路由跳转四种方式 (带参数):https://www.jb51.net/article/160401.htm 1.  router-link ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1. 不带参数  <router-link :to="{name:'home'}"> <router-link :to="{path:'/home'}"> //name,path都行, 建议用name /

判断用户是否登录以及对编码格式进行过滤

1.对编码进行过滤: EncodeFilter.java package com.bgiseq.util; import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletReq

Discuz!X 插件开发判断用户是否登录的代码怎么写

转:http://www.bacysoft.cn/thread-71-1-1.html Discuz!X 插件开发判断用户是否登录的代码怎么写? 我们开发插件的时候,经常需要判断访问用户是否为注册用户,如果是则允许访问,否则弹出登录窗口提示用户登录! 实现此功能的代码如下: if(empty($_G['uid'])) { showmessage('to_login', '', array(), array('showmsg' => true, 'login' => 1)); } 复制代码 $_

判断用户是否登录弹框

应用场景:某个操作需要用户登录才可以访问,使用方法. 1)天猫使用了两种方法.一种cookie判断: i.用户未登录,没有生成cookie,弹出登录框. ii.用户登录后生成cookie   iii.删除cookie要求重新登录 vi. 在当前页面之外打开另外一个页面进行登录.再回到当前页面,此时点击立即购买或加入购物车可以自动判断用户已经登录并进入下一页. 2)天猫右边的快捷入口现在可以识别用户是否在其它页面登录.原先这个用户信息在左边,如果用户在其它页面登录,并且在当前页面没有刷新的情况下点

第 10 章 判断用户是否登录

转载:http://www.mossle.com/docs/auth/html/ch010-fully.html 第 10 章 判断用户是否登录 有些情况,只要用户登录就可以访问某些资源,而不需要具体要求用户拥有哪些权限,这时候可以使用IS_AUTHENTICATED_FULLY,配置如下所示: <http auto-config='true'> <intercept-url pattern="/admin.jsp" access="ROLE_ADMIN&q

Servlet实现用户的登录功能

首先,前面我们已经实现与数据库的连接和用户的注册功能,接下来就是用户通过已经注册的信息进行登录功能的实现 1.接前两篇博客,首先先编写一个简单的登录页面,代码如下: 1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 <!DOCTYPE html PUBLIC "-//W3C//DTD