我正在一个新的应用程序中使用Nuxt/Vuetify在前端构建一个导航栏。我有一个<v-tabs />
循环遍历我想要显示的链接数组,理想情况下,我希望最后一个链接"Cart“显示一个<v-badge />
。最初我在循环之外有购物车链接,但是它没有标签转换,所以它肯定需要在循环内。
我尝试将v-if/else
设置为基于我正在设置的项的属性来显示徽章,但是通过这种方式徽章根本不会显示。这个是可能的吗?
<template>
<v-tabs
class="hidden-sm-and-down"
optional>
<v-tab
v-for="(item, i) in items"
:key="i"
:exact="item.title === 'Home'"
:to="item.to"
nuxt
:ripple="false"
active-class="text--primary"
class="font-weight-bold nav-link"
min-width="96"
text>
<v-badge <-- tried setting v-if/else here
v-if="item.badge"
color="red"
:content="cartItems"
:value="cartItems"
overlap>
{{ item.title }}
</v-badge>
<span v-else>{{ item.title }}</span>
</v-tab>
</v-tabs>
</template>
<script>
export default {
data: () => ({
items: [
{title: 'Portfolio', to: '/portfolio', badge: false},
{title: 'About', to: '/about', badge: false},
{title: 'Contact', to: '/contact', badge: false},
{title: 'Cart', to: '/cart', badge: true}
]
}),
computed: {
cartItems() {
return 2;
}
}
}
</script>
发布于 2020-05-22 11:55:24
我不知道发生了什么,但它已经工作了整整一个小时了。如果其他人遇到类似的情况,上面这篇文章中的代码应该可以工作。
https://stackoverflow.com/questions/61941613
复制相似问题