我有一个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路径,我该怎么办?
感谢阅读:)
答案 0 :(得分:8)
v-link中的语句不需要“Mustache”语法。
<li v-for="item in list"><a v-link="{ path: item.link }"></a></li>
答案 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>