Vue的路由(导航)

【关于vue的路由(导航)的知识的学习】


目录

1、什么是路由?

2、路由模式

3、路由(导航)的跳转  

4、vue 的路由传参数

5、嵌套路由(子路由)

6、路由导航守卫


1、什么是路由?

路由是指路径和组件的一 一 对应关系

2、路由模式

vue有两种路由模式 :hash 和 history ;默认是 hash  模式

      区别:hash  模式会带#号,不美观

                 history      不带#号,(使用时会向后台请求接口,易报404错误)

3、路由(导航)的跳转  

声明式导航router-link   to=" 要跳转的页面路径" 

编程式导航:this.$router.push()

4、vue 的路由传参数

(1)、query  传参:

既可以使用 name 也可以使用 path ,刷新页面参数不会丢失

            this.$router.push({
				name:'', 
				path: '',
				query: {}
			})
			
			this.$router.push('/info?canshu1=1&canshu2=2')
			
			//如何接受query参数:
			//	this.$route.query.属性名

(2)、params 传参:

只能使用 name 跳转,刷新的时候参数会丢失,不会显示到页面的 url

            this.$router.push({
				name:'', 
				params: {}
			})
			
			//如何接受params参数:
			//	this.$route.params.属性名

(3)、动态路由传参:

刷新的时候数据不会丢失

 {
	  path: '/info/:name/:age',
	  name: 'info',
	  component:()=>import('../views//info.vue')
  }

      //接收参数
      this.$route.params

5、嵌套路由(子路由)

嵌套路由常用于侧边导航,底部路由导航。

使用:

(1)、在展示的页面设置  <router-view/> 为第二个坑

(2)、在第二个坑的页面路由下设置子路由,使用 children

 {
    path: '/',
    name: 'Home',
    component: Home,
	children: [
		{
		  path: '/about',
		  name: 'About',
		  component: function () {
		    return import( '../views/About.vue')
		  }
		},
		{
			  path: '/my',
			  name: 'my',
			  component: ()=>import('../views/my.vue')
		},
	]
  },

6、路由导航守卫

路由导航守卫分三种:

(1)、全局导航守卫(在  router 文件夹下的 index.js 文件,在文件导出之前)

            全局前置导航守卫:beforeEach

            语法:

            router.beforeEach((to,from,next)=>{
				// to -- 到哪里去
				// from -- 从哪里来
				// next -- 下一步   重定向
			})

            全局后置导航守卫:afterEach

            语法:

            router.afterEach((to,from)=>{
					
			})

            全局解析守卫:beforeResolve

(2)、组件导航守卫(有3个,在要拦截的页面写)

        // 路由进入之前
		beforeRouteEnter(to,from,next){
			
		}
		// 路由更新
		beforeRouteUpdate(to,from,next){
			
		}
		
		// 路由离开之前
		beforeRouteLeave(to,from,next){
			
		}

(3)、单个独享的路由守卫(在路由下面写):beforeEnter

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值