如何将变量传递给vue-router v-link

时间:2016-09-06 08:48:05

标签: vue.js vue-router

我有一个vue组件来渲染导航列表,并传递导航列表,每个项目都包含标题和链接:

<template>
  <ul>
    <li v-for="item in list"><a v-link="{{ path: item.link }}"></a></li>
  </ul>
</template>

<script>
  export default {
    props: ['list']
  }
</script>

我尝试将变量item.link传递给v-link路径,但失败了。

得到这个警告:

[Vue warn]: v-link="{{ path: item.link }}": attribute interpolation is not allowed in Vue.js directives and special attributes.

如果将变量传递给v-link路径,我该怎么办?

感谢阅读:)

3 个答案:

答案 0 :(得分:8)

v-link中的语句不需要“Mustache”语法。

<li v-for="item in list"><a v-link="{ path: item.link }"></a></li>

您可以看到http://router.vuejs.org/en/index.html

答案 1 :(得分:8)

我在vue-router 2.x使用了以下内容:

<router-link :to="{path: '/applications/' + currentApplicationId}" class="nav-link">Overview</router-link>

可以找到更多文档here

答案 2 :(得分:1)

更短的方式是:

<router-link :to="`/applications/${currentApplicationId}`">Overview</router-link>
相关问题