Vue.js从路由器链接绑定获取参数

时间:2018-11-27 18:26:31

标签: vue.js parameters

如何获得不通过URL传递但通过诸如params这样的发布的参数?

<router-link v-bind:to="{ 
    path: '/city/'+city.topicID, 
    params: { countryCode: countryCode, city: city } }">

    Chat
</router-link>

this.$route.params似乎无效,并且会显示topicID。

1 个答案:

答案 0 :(得分:1)

router-link documentation中,提到了router-link只是将“ to”的内容传递给router.push()。

router.push() documentation中,它提到如果您同时具有“路径”和“参数”,则将忽略这些参数。具体来说,它说:

  

注意:如果提供了路径,则忽略参数,如上面的示例所示,查询不是这种情况。相反,您需要提供路线名称或使用任何参数手动指定整个路径

因此,如果您想使用参数,则需要使用named route,然后在命名的路由定义中构建路径。