fix tab route

This commit is contained in:
jxxghp
2024-05-31 08:04:27 +08:00
parent e865a5ca62
commit 52e0d3a4bc
5 changed files with 15 additions and 17 deletions

View File

@@ -85,14 +85,14 @@ const superUser = store.state.auth.superUser
:item="{
title: '电影',
icon: 'mdi-movie-check-outline',
to: '/subscribe-movie',
to: '/subscribe-movie/mysub',
}"
/>
<VerticalNavLink
:item="{
title: '电视剧',
icon: 'mdi-television-classic',
to: '/subscribe-tv',
to: '/subscribe-tv/mysub',
}"
/>
<VerticalNavLink
@@ -144,7 +144,7 @@ const superUser = store.state.auth.superUser
:item="{
title: '插件',
icon: 'mdi-apps',
to: '/plugins',
to: '/plugins/installed',
}"
/>
<VerticalNavLink

View File

@@ -23,7 +23,7 @@ const activeTab = ref(route.params.tab)
<template>
<div>
<VTabs v-model="activeTab">
<VTab v-for="item in tabs" :value="item.tab">
<VTab v-for="item in tabs" :value="item.tab" :to="'/subscribe-movie/' + item.tab">
<span class="mx-5">{{ item.title }}</span>
</VTab>
</VTabs>

View File

@@ -23,7 +23,7 @@ const activeTab = ref(route.params.tab)
<template>
<div>
<VTabs v-model="activeTab">
<VTab v-for="item in tabs" :value="item.tab">
<VTab v-for="item in tabs" :value="item.tab" :to="'/subscribe-tv/' + item.tab">
<span class="mx-5">{{ item.title }}</span>
</VTab>
</VTabs>

View File

@@ -10,8 +10,7 @@ const router = createRouter({
history: createWebHashHistory(import.meta.env.BASE_URL),
scrollBehavior(to, from, savedPosition) {
// 如果页面有缓存那么恢复其位置, 否则始终滚动到顶部
if (to.meta.keepAlive && savedPosition)
return savedPosition
if (to.meta.keepAlive && savedPosition) return savedPosition
return { top: 0 }
},
routes: [
@@ -43,14 +42,14 @@ const router = createRouter({
},
},
{
path: 'subscribe-movie',
path: 'subscribe-movie/:tab',
component: () => import('../pages/subscribe-movie.vue'),
meta: {
requiresAuth: true,
},
},
{
path: 'subscribe-tv',
path: 'subscribe-tv/:tab',
component: () => import('../pages/subscribe-tv.vue'),
meta: {
requiresAuth: true,
@@ -85,7 +84,7 @@ const router = createRouter({
},
},
{
path: 'plugins',
path: 'plugins/:tab',
component: () => import('../pages/plugin.vue'),
meta: {
requiresAuth: true,
@@ -165,8 +164,7 @@ router.beforeEach((to, from, next) => {
if (to.meta.requiresAuth && !isAuthenticated) {
next('/login')
}
else {
} else {
startNProgress()
next()
}

View File

@@ -25,11 +25,11 @@ const activeTab = ref(route.params.tab)
const tabs = [
{
title: '我的插件',
tab: 'myplugin',
tab: 'installed',
},
{
title: '插件市场',
tab: 'pluginmarket',
tab: 'market',
},
]
@@ -330,14 +330,14 @@ onBeforeMount(async () => {
<template>
<div>
<VTabs v-model="activeTab">
<VTab v-for="item in tabs" :value="item.tab">
<VTab v-for="item in tabs" :value="item.tab" :to="'/plugins/' + item.tab">
<span class="mx-5">{{ item.title }}</span>
</VTab>
</VTabs>
<VWindow v-model="activeTab" class="mt-5 disable-tab-transition" :touch="false">
<!-- 我的插件 -->
<VWindowItem value="myplugin">
<VWindowItem value="installed">
<transition name="fade-slide" appear>
<div>
<LoadingBanner v-if="!isRefreshed" class="mt-12" />
@@ -363,7 +363,7 @@ onBeforeMount(async () => {
</transition>
</VWindowItem>
<!-- 插件市场 -->
<VWindowItem value="pluginmarket">
<VWindowItem value="market">
<transition name="fade-slide" appear>
<div>
<LoadingBanner v-if="!isAppMarketLoaded" class="mt-12" />