【发布时间】:2021-05-09 21:01:07
【问题描述】:
我有一个带有多个链接的侧边栏(所有链接都由用户动态生成 - 类似于创建笔记然后有指向这些笔记的链接):
“添加舞台”按钮允许他们添加新笔记。
用于生成此列表的组件是一个 v-navigation-drawer:
<v-navigation-drawer>
<v-expansion-panels>
<v-expansion-panel>
<v-expansion-panel-content>
<v-list
v-for="(note, i) in notes"
:key="i"
>
<v-card flat @click="getNoteURL(note)">
<div class="d-flex pt-2" v-else>
<v-icon>
{{ note.mdi_name }}
</v-icon>
<p>{{ note.name }}</p>
</div>
</v-card>
</v-list>
</v-expansion-panel-content>
</v-expansion-panel>
</v-expansion-panels>
</v-navigation-drawer>
getNoteURL 是一种将用户带到 url 所在的方法 .../notes/5
getNoteURL(note) {
window.location.href = window.routes['notes.show'].replace('{note}', note.id);
},
我如何能够突出显示特定链接,以便无论用户在哪个页面上,链接的颜色都会变暗?比如像这样:
【问题讨论】:
-
您应该使用
vue-router,因此使用vue-link将允许您的SPA 移动到特定路径。如果侧边栏中的链接与侧边栏的链接路径匹配,它们将自己突出显示,或者至少有一个特定的类与它们相关联。它将是此类:router.vuejs.org/api/#exact-path-active-class PS:window.location不是 SPA 中的解决方案。
标签: javascript vue.js routes vue-component vuetify.js