40 - 编程式导航-两种路由跳转方式

一. 编程式导航 - 基本跳转

问题: 点击按钮跳转如何实现?

编程式导航: 用JS代码来进行跳转

 两种语法:
        (1). path 路径跳转 (简易方便)
// 简写
this.$router.push('路由路径')

// 完整写法
this.$router.push({
    path: '路由路径'
})
        (2). name 命名路由跳转(适合 path 路径长的场景)
this.$router.push({
    name: '路由名'
})
{name: '路由名', path:'/path/xxx',component:xxx},
        (3). 代码示例

二. ​​​​​​编程式导航 - 路由传参 

问题:点击搜索按钮,跳转需要传参如何实现?

两种传参方式:

        查询参数 + 动态路由传参

两种跳转方式,对于两种传参方式都支持:

        (1). path 路径跳转传参
                        1. query传参
// 简写
this.$router.push('/路径?参数名1=参数值1&参数2=参数值2')

// 完整写法 (更适合传参)
this.$router.push({
    path: '/路径',
    query: {
        参数名1: '参数值1'
        参数名2: '参数值2'
    }
})

//接收
$router.query.参数名
                        2. 动态路由传参(需要配路由)
// 简写
this.$router.push('/路径/参数值')

// 完整写法
this.$router.push({
    path: '/路径/参数值',
})


//接收
$router.params.参数名

// 配置路由
{path: '/search/:words?', component:Search}
                        3. 代码示例

 
        (2). name 命名路由跳转传参
                1. query传参
this.$router.push({
    name: '路由名',
    query:{
      参数名1: '参数值1',
      参数名2: '参数值2'  
  }
})

// 接收 
$router.query.参数名
                2. 动态路由传参(需要配路由)
this.$router.push({
    name: '路由名',
    params:{
      参数名: '参数值'
  }
})

// 接收 
$router.params.参数名

// 配置路由
{name:"search",path: '/search/:words?', component:Search},
                3. 代码示例

 

三. 总结

1. path 路径跳转
        (1). query传参

        (2). 动态路由传参(需要配置路由)

2. name 命名路由跳转
          (1). query传参

          (2). 动态路由传参(需要配置路由)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值