vue-router中传参的两种方式

vue-router中,有query跟params两种传参方式,可以让不同的path指向同一个组件,并且能获取对应的参数

1.params
我们创建一个组件news,其中两个router-link,path不同

<template>
    <div class="hi">
        <h3>新闻列表</h3>
        <router-link to="/news/news001?name=zhangsan">新闻001</router-link>
        <router-link to="/news/news002?name=lisi">新闻002</router-link>
        <router-view></router-view>
    </div>
</template>
<script>
    export default{

    }
</script>

我们新建一个组件sonnews

<template>
    <div class="hi">
        <p>{{$route.params.news+'...'+$route.query.name}}</p>
    </div>
</template>
<script>
    export default{

    }
</script>

在路由中配置index.js中写入以下代码

{
      path:'/news',
      name:'news',
      component:news,
      children:[
        {
          path:'/news/:news',
          component:sonnews
        }
      ]
    }

在路由配置index.js中,使用v-bind,也就是”:”的方式绑定一个变量,就绑定了动态路由
如上图中的 :news,就是params传参数,在router-link中path后面的路径一个是news001,一个是news002,但是都指向同一个组件,那就是sonnews,这些参数可以使用$route.params.news来获得.

在news001跟news002后面,有?name=zhangsan这种参数,就是通过query传值,可以用$route.query.name来获取

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值