路由独享路由守卫
index.js
- 只对某个路由进行权限限制,可以在路由规则里面单独配置权限,使用beforeEnter函数
{
path: /about ,
meta:{
flag:false,
title: 关于
},
// 独立的路由权限,如果只对一个路由需要设定,写在这里就好
// 第二个参数是from,用下划线来占位,如果不用该参数,会报错,用下划线占位就可以不报错了,
//其它函数的参数也可以用下划线占位
beforeEnter:(to,_,next) => {
if(to.meta.flag === true)(
next()
)
},
component:About
},
组件路由守卫
组件文件写路由权限
-
beforeRouteEnter
这个函数是通过路由规则(必须是通过路由规则,作为普通组件不会触发该函数)进入组件时触发的(已经在这个路由组件里面了才触发),beforeEach这个是没进入路由规则前触发的(还没在这个路由组件里面) -
beforeRouteLeave
这个函数是离开该路由组件时触发的(还在这个路由组件里面),afterEach这个是没进入路由组件前触发的,在beforeEach之后立马调用
beforeEach >>> afterEach >>> beforeRouteEnter >>>beforeRouteLeave(如果不离开这个路由组件,这辈子都不会被调用beforeRouteLeave),这个他们的调用顺序
mounted(){
console.log("TongZhiVue被调用")
},
beforeRouteEnter(to, _, next){
console.log(this)
console.log(to, beforeRouteEnter )
next()
},
beforeRouteLeave(to, _, next){
console.log(this)
console.log(to, beforeRouteLeave )
next()
}

必须由路由规则的方式进入组件,如果作为普通组件,这两个函数不触发
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...