vue路由跳转

vue中跳转方式为组件<router-link>this.$router.push两种,传参方式为queryparams两种。

1. 无参数
<!-- 路由 -->
{
  path: '/',
  name: home,
  components: Home
},
{
  path: '/detail',
  name: detail,
  components: Detail
}


//第一种:通过name跳转
<router-link to="detail"></router-link>
this.$router.push('detail')

//第二种:通过path跳转
<router-link to="/detail"></router-link>
this.$router.push('/detail')
2. 有参数(有query和params两种传参方式)
(1) query传参(类似于get请求,把参数拼接到地址中)
<!-- 路由 -->
{
  path: '/',
  name: home,
  components: Home
},
{
  path: '/detail',
  name: detail,
  components: Detail
}


//第一种:通过name跳转
<router-link :to="{name: 'detail', query: {id: 11, name: 'swq'}}"></router-link>
this.$router.push({name: 'detail', query: {id: 11, name: 'swq'}})

//第二种:通过path跳转
<router-link :to="{path: '/detail', query: {id: 11, name: 'swq'}}"></router-link>
this.$router.push({path: '/detail', query: {id: 11, name: 'swq'}})

// http://localhost:8082/#/detail?id=11&name=swq
<!-- 接收参数 -->
this.$route.query.id //11
this.$route.query.name //swq
this.$route.query //{id: 11, name: 'swq'}
(2) params传参(类似于post请求,如果定义路由时后面带参数则显示,否则不显示)
情况一:不在地址栏显示参数
<!-- 路由 -->
{
  path: '/',
  name: home,
  components: Home
},
{
  path: '/detail',
  name: detail,
  components: Detail
}

//第一种:通过name跳转
<router-link :to="{name: 'detail', params: {id: 11, name: 'swq'}}"></router-link>
this.$router.push({name: 'detail', params: {id: 11, name: 'swq'}})

//第二种:通过path跳转
<router-link :to="{path: '/detail', params: {id: 11, name: 'swq'}}"></router-link>
this.$router.push({path: '/detail', params: {id: 11, name: 'swq'}})

// http://localhost:8082/#/detail
情况二:在地址栏显示参数
<!-- 路由  -->
{
  path: '/',
  name: home,
  components: Home
},
{
  path: '/detail/:id/:name',
  name: detail,
  components: Detail
}

//只能通过name跳转,不能通过path跳转
<router-link :to="{name: 'detail', params: {id: 11, name: 'swq'}}"></router-link>
this.$router.push({name: 'detail', params: {id: 11, name: 'swq'}})


// http://localhost:8082/#/detail/11/swq
<!-- 接收参数 -->
this.$route.params.id //11
this.$route.params.name //swq
this.$route.params //{id: 11, name: 'swq'}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值