From e72deb43d87f492a9fd430cb19df0082076dc1a0 Mon Sep 17 00:00:00 2001 From: Hakadao Date: Mon, 16 Oct 2023 14:32:04 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20update=20ranking=20page=20*=20refactor:?= =?UTF-8?q?=20=E5=88=86=E9=9B=A2=20Home.vue=20=E7=9A=84=20ts=20=E9=A1=9E?= =?UTF-8?q?=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/contentScripts/views/Home/Home.vue | 14 ++++---- .../views/Home/components/Ranking.vue | 32 +++++++++++++++---- src/contentScripts/views/Home/types.ts | 19 +++++++++++ 3 files changed, 52 insertions(+), 13 deletions(-) diff --git a/src/contentScripts/views/Home/Home.vue b/src/contentScripts/views/Home/Home.vue index 69fac36c..dacbbd0a 100644 --- a/src/contentScripts/views/Home/Home.vue +++ b/src/contentScripts/views/Home/Home.vue @@ -3,31 +3,33 @@ import ForYou from './components/ForYou.vue' import Following from './components/Following.vue' import Trending from './components/Trending.vue' import Ranking from './components/Ranking.vue' +import type { HomeTab } from './types' +import { HomeSubPage } from './types' import emitter from '~/utils/mitt' import { settings } from '~/logic' const handleBackToTop = inject('handleBackToTop') as () => void const recommendContentKey = ref(`recommendContent${Number(new Date())}`) -const activatedPage = ref<'ForYou' | 'Following' | 'Trending'>('ForYou') +const activatedPage = ref(HomeSubPage.ForYou) const pages = { ForYou, Following, Trending, Ranking } -const tabs = reactive<{ label: string; value: 'ForYou' | 'Following' | 'Trending' | 'Ranking' }[]>([ +const tabs = reactive([ { label: 'For you', - value: 'ForYou', + value: HomeSubPage.ForYou, }, { label: 'Following', - value: 'Following', + value: HomeSubPage.Following, }, { label: 'Trending', - value: 'Trending', + value: HomeSubPage.Trending, }, { label: 'Ranking', - value: 'Ranking', + value: HomeSubPage.Ranking, }, ]) diff --git a/src/contentScripts/views/Home/components/Ranking.vue b/src/contentScripts/views/Home/components/Ranking.vue index 60beaead..bd70aa73 100644 --- a/src/contentScripts/views/Home/components/Ranking.vue +++ b/src/contentScripts/views/Home/components/Ranking.vue @@ -1,14 +1,15 @@ + + diff --git a/src/contentScripts/views/Home/types.ts b/src/contentScripts/views/Home/types.ts index b38967aa..d637ce90 100644 --- a/src/contentScripts/views/Home/types.ts +++ b/src/contentScripts/views/Home/types.ts @@ -1,3 +1,15 @@ +export interface HomeTab { + label: string + value: HomeSubPage +} + +export enum HomeSubPage { + ForYou = 'ForYou', + Following = 'Following', + Trending = 'Trending', + Ranking = 'Ranking', +} + export interface VideoModel { id: number bvid: string @@ -310,3 +322,10 @@ export interface PopularVideoModel { corner_mark: number } } + +export interface RankingType { + name: string + rid?: number + seasonType?: number + type?: string +}