我想将选项卡路由到我已分配的某个组件,但它不成功,因为当我单击该选项卡时,该组件不会保留选项卡视图并直接查看另一个页面。
我一直在尝试提供一些示例的代码,但未成功。
这是myaccount.vue
<template>
<div>
<v-toolbar color="deep-purple darken-4" dark tabs>
<h3>My Account</h3>
<v-spacer></v-spacer>
<v-btn small color="error">PAYMENT RM 1120.00</v-btn>
<template v-slot:extension>
<v-tabs color="deep-purple darken-4" align-with-title>
<v-tabs-slider color="white"></v-tabs-slider>
<v-tab to="/foo">Profile</v-tab>
<v-tab to="/bill">Bill</v-tab>
</v-tabs>
</template>
</v-toolbar>
<v-tabs-items>
<v-tab-item>
<router-view></router-view>
</v-tab-item>
</v-tabs-items>
</div>
</template>
这是router.js文件:
import Bill from './views/myccom/bill.vue'
Vue.use(Router)
routes: [
{
path: '/bill',
name: 'Bill',
component: Bill
},
],
如何在不隐藏标签的情况下使标签停留在顶部并移动内容?
答案 0 :(得分:1)
不要使用v-tab-item
,而只能使用router-view
。
示例:
<template>
<v-container>
<v-tabs
v-model="activeTab"
slider-color="yellow">
<v-tab to="{ name: 'profile' }">
Profile
</v-tab>
<v-tab to="{ name: 'bill' }">
Bill
</v-tab>
</v-tabs>
<router-view/>
</v-container>
</template>
<script>
export default {
name: 'MyComponentName',
data: () => ({
activeTab: '0'
})
}
</script>