Vue-详解设置路由导航的两种方法

本文详细介绍了Vue中设置路由导航的两种方法,即<router-link :to=\...\>和router.push(...)。阐述了to值的形式,说明了两种方法的规则。还提及带参数路由的注意点,包括地址栏变化、路由map的path设置及获取参数的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Vue-详解设置路由导航的两种方法: <router-link :to="..."> 和router.push(...)

一、<router-link :to="...">
  to里的值可以是一个字符串路径,或者一个描述地址的对象。例如:

// 字符串 
<router-link to="apple"> to apple</router-link> 

// 对象 
<router-link :to="{path:'apple'}"> to apple</router-link> 

// 命名路由 
<router-link :to="{name: 'applename'}"> to apple</router-link> 

//直接路由带查询参数query,地址栏变成 /apple?color=red 
<router-link :to="{path: 'apple', query: {color: 'red' }}"> to apple</router-link> 

// 命名路由带查询参数query,地址栏变成/apple?color=red 
<router-link :to="{name: 'applename', query: {color: 'red' }}"> to apple</router-link>

//直接路由带路由参数params,params 不生效,如果提供了 path,params 会被忽略 
<router-link :to="{path: 'apple', params: { color: 'red' }}"> to apple</router-link> 

// 命名路由带路由参数params,地址栏是/apple/red 
<router-link :to="{name: 'applename', params: { color: 'red' }}"> to apple</router-link>

 

二、router.push(...)方法
  同样的规则也适用于router.push(...)方法。

// 字符串 
router.push('apple') 

// 对象 
router.push({path:'apple'}) 

// 命名路由 
router.push({name: 'applename'}) 

//直接路由带查询参数query,地址栏变成 /apple?color=red 
router.push({path: 'apple', query: {color: 'red' }}) 

// 命名路由带查询参数query,地址栏变成/apple?color=red 

router.push({name: 'applename', query: {color: 'red' }}) 

//直接路由带路由参数params,params 不生效,如果提供了 path,params 会被忽略 router.push({path:'applename', params:{ color: 'red' }}) 

// 命名路由带路由参数params,地址栏是/apple/red 
router.push({name:'applename', params:{ color: 'red' }})

三、注意点

1、关于带参数的路由总结如下:

无论是直接路由“path" 还是命名路由“name”,带查询参数query,地址栏会变成“/url?查询参数名:查询参数值“;
直接路由“path" 带路由参数params params 不生效;
命名路由“name" 带路由参数params 地址栏保持是“/url/路由参数值”;

2、设置路由map里的path值:

 带路由参数params时,路由map里的path应该写成:  path:'/apple/:color' ;
 带查询参数query时,路由map里的path应该写成: path:'/apple' ;

3、获取参数方法:

在组件中:  {{$route.params.color}}
在js里: this.$route.params.color

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hongc93

感谢鼓励 继续航行

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值