vue3-router使用(全)

本文详细介绍了Vue3 Router的使用,包括如何定义路由、导入组件、传递参数、设置路由守卫以及实现编程式导航。通过实例讲解了相对路径和绝对路径的使用,组件的全局和惰性导入,以及通过字符串、对象方式传递参数的方法。同时,阐述了如何在守卫中操作路由,并演示了编程式路由的push、forward、back和go方法。

说明

router设计核心是一个路由对应一个组件

  1. 本教程需要有一定router基础
  2. 定义路由
  3. 导入组件
  4. 传参
  5. 守卫
  6. 编程式路由

一、定义路由

  1. 自定义路由
{
path:......,
name:......,
component:......
}
  1. 子路由
{
path:......,
children:[
{
path:......,
name:......,
component:......
},
......
]
}

注:path相对路径和绝对路径
相对路径:只写字路由
绝对路由:全路由

二、导入组件

  1. 全局导导入
import ...... from ......
  1. 惰性导入
()=>import(......)

三、 传参

  1. 传统传参
  • 字符串传参
<router-link to='url?var=value&var=value.......'></router-link>
  • 对象传参
router-link to="{
	path | name:......, //用path时就是路径,是name时就是定义的路由名
	query:{......}
}"
  1. Rest传参
  • 定义 path:“url/:var/:var…”
  • <router-link to=“url/value/value…”>
  • 对象传参
<router-link :to="{
	name:......,//只能用name,不能用path
	params:{......}
}">context</router-link>
  1. 取值(路由对象route)
    this.$route.query
    this.$route.params
    route其它属性
    name
    path
    fullpath
    meta
    query
    params

四、 守卫

注:在根组件index.js中创建

router.beforEach((to,from,next)=>{
	to.path //去的路由
	from.path //来的路由
	next() //下一个函数
	next(path) //指向路由
})

五、编程式路由

this.$router.push(path) 指定路由
this.$router.forword() 向前一步
this.$router.back() 向后一步
this.$router.go(n) 向前或向后几步

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值