From bc277783667d5c21811f3435e22280ab4e959c64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E1=B4=80=E1=B4=8D=E1=B4=9B=E1=B4=8F=E1=B4=80=E1=B4=87?= =?UTF-8?q?=CA=80?= Date: Wed, 19 Feb 2025 02:18:20 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E5=89=8D=E7=AB=AF=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E5=8F=96=E6=B6=88=E8=A7=86=E9=A2=91=E6=9D=A5=E6=BA=90=E7=AD=9B?= =?UTF-8?q?=E9=80=89=EF=BC=88=E7=82=B9=E5=87=BB=E6=9D=A5=E6=BA=90=E4=B8=A4?= =?UTF-8?q?=E6=AC=A1=EF=BC=89=EF=BC=8C=E8=B0=83=E6=95=B4=20API=20TOKEN=20?= =?UTF-8?q?=E5=A1=AB=E5=86=99=E4=BD=8D=E7=BD=AE=20(#264)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/lib/components/Header.svelte | 15 ++++ web/src/routes/+page.svelte | 124 ++++++++++++++------------- 2 files changed, 79 insertions(+), 60 deletions(-) create mode 100644 web/src/lib/components/Header.svelte diff --git a/web/src/lib/components/Header.svelte b/web/src/lib/components/Header.svelte new file mode 100644 index 0000000..76c2371 --- /dev/null +++ b/web/src/lib/components/Header.svelte @@ -0,0 +1,15 @@ + + +
+

bili-sync 管理页

+
+ +
+
+ diff --git a/web/src/routes/+page.svelte b/web/src/routes/+page.svelte index 9192e64..ab3b008 100644 --- a/web/src/routes/+page.svelte +++ b/web/src/routes/+page.svelte @@ -5,6 +5,7 @@ import VideoItem from '$lib/components/VideoItem.svelte'; import { listVideos, getVideoSources } from '$lib/api'; import type { VideoInfo, VideoSourcesResponse } from '$lib/types'; + import Header from '$lib/components/Header.svelte'; // API Token 管理 let apiToken: string = localStorage.getItem('auth_token') || ''; @@ -105,8 +106,13 @@ // 点击侧边栏项时更新 activeCategory 和全局选中模型 id function selectModel(category: keyof VideoSourcesResponse, id: number) { + // 如果当前已选中的模型和点击的一致,则取消筛选 + if (selectedModel && selectedModel.category === category && selectedModel.id === id) { + selectedModel = null; + } else { + selectedModel = { category, id }; + } activeCategory = category; - selectedModel = { category, id }; currentPage = 0; videoCollapseSignal = !videoCollapseSignal; fetchVideos(); @@ -118,64 +124,62 @@ bili-sync 管理页 -
- -
- -
- - + + +
+
+ +
+
+ {#each videos as video} + + {/each} +
+
+ + 第 {currentPage + 1} 页,共 {Math.ceil(total / pageSize)} 页 + +
+
+
+