vue 导航守卫
1、全局守卫(在所有路由展示前触发)//在main.js中
	 	router.beforeEach((to, from, next) => { 
     to		即将要进入的到的路由,值为路由
     from	离开的路由(从哪个路由离开),值为路由
     next	值为函数,这个函数决定你接下来要展示的路由页面
		})
router.beforeEach((to, from, next) => {
  if(to.path==='/login'){
    next();
  }else{
    alert('你还没登录,请登录');
    next('/login');
  }
});
在页面点击时,会先询问,然后跳转。
2、后置钩子(在所有路由展示后触发)//在main.js中
router.afterEach((to,from)=>{ 
    to		即将要进入的到的路由,值为路由
    from	离开的路由(从哪个路由离开),值为路由
		});
router.afterEach((to, from) => {
  alert('我是后置钩子')
})
3、路由独享的守卫(在当前路由展示前触发)//在router.js
 beforeEnter(to, from, next){ //在路由内部使用 
    to		即将要进入的到的路由,值为路由
   from	离开的路由(从哪个路由离开),值为路由
   next	值为函数,这个函数决定你接下来要展示的路由页面
		};
beforeEnter(to,from,next){
    alert('非登录状态下无法管理,请登录');
    next('/login');
}
4、组件内的守卫 
		beforeRouteEnter(to, from, next){	//在路由组件内使用 
   //在当前路由被展示前调用 
		};
		beforeRouteUpdate(to, from, next){	//在路由组件内使用 
   //在当前路改变时调用 
		};
		beforeRouteLeave(to, from, next){	//在路由组件内使用
   //在离开当前路时调用  
		};
beforeRouteEnter(to, from, next){	//在路由组件内使用
			//在当前路由被展示前调用
			//alert('你好!');
			//alert(this.name);	//报错,beforeRouteEnter不能够访问到this对象,因为守卫触发时组件还没有被创建
			next(vm=>{
				alert(vm.name);
			});
		},
离开页面时调用
 beforeRouteLeave (to, from, next) {
           // 在离开当前路由时调用
           const answer=confirm('你确定要离开么?')
           if(answer){
                next();
           }else{
               next(false);
           }
     }
vue 导航守卫的更多相关文章
- Vue导航守卫beforeRouteEnter,beforeRouteUpdate,beforeRouteLeave详解
		Vue导航守卫以我自己的理解就是监听页面进入,修改,和离开的功能.每个守卫接受三个参数 to: Route: 即将要进入的目标路由对象 from: Route: 当前导航正要离开的路由 next: F ... 
- vue导航守卫和axios拦截器的区别
		在Vue项目中,有两种用户登录状态判断并处理的情况,分别为:导航守卫和axios拦截器. 一.什么是导航守卫? vue-router 提供的导航守卫主要用来通过跳转或取消的方式守卫导航.(在路由跳转时 ... 
- vue 导航守卫,验证是否登录
		路由跳转前,可以用导航守卫判断是否登录,如果登录了就正常跳转,没有登录就把路由指向登录页面. router.beforeEach((to, from, next) => { const next ... 
- [Vue]导航守卫:全局的、单个路由独享的、组件级的
		正如其名,vue-router 提供的导航守卫主要用来通过跳转或取消的方式守卫导航.有多种机会植入路由导航过程中:全局的, 单个路由独享的, 或者组件级的. 记住参数或查询的改变并不会触发进入/离开的 ... 
- Vue的钩子函数[路由导航守卫、keep-alive、生命周期钩子]
		前言 说到Vue的钩子函数,可能很多人只停留在一些很简单常用的钩子(created,mounted),而且对于里面的区别,什么时候该用什么钩子,并没有仔细的去研究过,且Vue的生命周期在面试中也算是比 ... 
- Vue的路由动态重定向和导航守卫
		一.重定向 重定向也是通过 routes 配置来完成,下面例子是从 /a 重定向到 /b: const router = new VueRouter({ routes: [ { path: '/a', ... 
- Vue(7)- vue-cookies、极验滑动验证geetest、vue-router的导航守卫
		一.vue-cookies 参考文档简书:https://www.jianshu.com/p/535b53989b39 参考文档npm:https://www.npmjs.com/package/vu ... 
- vue之生命周期与导航守卫
		组件钩子函数: beforeCreate.created.beforeMount.mounted.beforeUpdate.updated.beforeDestroy.destoryed 还有两个特殊 ... 
- vue进阶:vue-router之导航守卫、路由元信息、路由懒加载
		1.导航被触发 2.在失活的组件里调用离开守卫:beforeRouteLeave —— 组件内守卫(离开组件). 3.调用全局的beforeEach守卫 —— 全局守卫(进入组件). 4.在重用组件里 ... 
随机推荐
- Android 显示系统:Vsync机制
			一.Vsync简介: 屏幕的刷新过程是每一行从左到右(行刷新,水平刷新,Horizontal Scanning),从上到下(屏幕刷新,垂直刷新,Vertical Scanning).当整个屏幕刷新完毕 ... 
- kotlin委托属性
			fun main(arg: Array<String>) { val myClass1 = myClass1() myClass1.name="mycalsss1" v ... 
- PLSQL Developer配置OCI连接远程数据库
			转: PLSQL Developer配置OCI连接远程数据库 当前环境: 本机系统:Win7 32位 PLSQL版本:9.06 数据库版本:10.2 32位 下面开始具体操作. 1.在Oracle官网 ... 
- [工具]tcping检查开放的端口
			tcping小工具是一款用于tcp监控的软件.tcping小工具可以时刻监控服务器的网络情况,包括ping值和端口状态,可以突破机房和服务器的禁用设置,是一款十分实用的网络分析小工具. 下载地址:ht ... 
- osg  help
			#ifdef _WIN32#include <Windows.h>#endif // _WIN32 #include <osgViewer/Viewer>#include &l ... 
- 01-02  Flutter仿京东商城项目 功能分析、底部导航Tab切换以及路由配置、架构搭建:(Flutter仿京东商城项目 首页布局以及不同终端屏幕适配方案)
			Flutter和Dart交流学习群:交流群:452892873 01Flutter仿京东商城项目 功能分析.底部导航Tab切换以及路由配置.架构搭建 02Flutter仿京东商城项目 首页布局以及不同 ... 
- Jenkins+gitlab+maven持续集成
			https://blog.csdn.net/tq08g2z/article/details/79718425 https://www.jianshu.com/p/3507d8b2ac87 报错用下面解 ... 
- leetcode 区间合并
			个区间若能合并,则第一个区间的右端点一定不小于第二个区间的左端点.所以先把区间集合按照左端点从小到大进行排序,接着从第一个区间开始遍历,对每个区间执行如下操作: 1.首先保存该区间的左端点start和 ... 
- Flutter磨砂玻璃效果制作
			Flutter的Fliter Widget 也是非常强大的,它可以制作出你想要的神奇滤镜效果.下面制作一个毛玻璃效果. 这个和以前的写法都一样,所以就直接贴代码了. import 'package:f ... 
- C\C++中的 struct 关键字详解
			struct关键字是用来定义一个新的类型,这个新类型里面可以包含各种其他类型,称为结构体. 1. 什么是结构体 结构体(struct)是一种自定义的数据类型,就是把一组需要在一起使用的数据元素组合成一 ... 
