路由导航守卫

放肆的年华 提交于 2020-03-07 14:28:15

全局导航守卫 ,路由独享和 组件内的导航钩子 三种

router.beforeEach((to, from, next) => {
  // do someting
});
后置钩子(没有 next 参数)
router.afterEach((to, from) => {
  // do someting
});
cont router = new  VueRouter({
 routes: [
  {
    path: '/file',
    component: File,
    beforeEnter: (to, from ,next) => {  //路由独享
       // do someting
    }
   }
 ]
});
data(){
 return{
   pro:'产品'
 }
},
beforeRouteEnter:(to,from,next)=>{
  console.log(to)
  next(vm => {
   console.log(vm.pro)  //只能在回调里获取this ,上面两个可以正常获取this
  })
}

===============

params , query 参数传递并获取

 

//params传参 类似post请求  url不显示参数  localhost:8080/detail
this.$router.push({
 name:"detail",
 params:{
   name:'dongfang',
 }
});

//接受
this.$route.params.name


//query传参, 类似get请求,在url上显示参数    localhost:8080/detail?name=dongfang&id=34
this.$router.push({
  path:'/detail',
  query:{
    name:"dongfang",
    id:34
  }
 })

//接受 
this.$route.query.id

params 只能用 name 来引入路由,query 既可以用 name 又可以用 path(通常用 path)

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!