From d637db70f66390b96d8361fc84600f06c1c3f703 Mon Sep 17 00:00:00 2001 From: lion <120344285@qq.com> Date: Wed, 10 Jun 2026 10:26:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/admin/banners.ts | 4 +- src/components/PageTitle.vue | 24 +++ src/components/RemotePagedSelect.vue | 122 ++++++++++++++ src/router/index.ts | 5 + src/views/assets/banners/index.vue | 155 ++++++++++++------ src/views/assets/crawler/index.vue | 3 +- src/views/assets/map/index.vue | 3 +- src/views/assets/papers/index.vue | 3 +- src/views/assets/universities/index.vue | 3 +- src/views/dashboard/index.vue | 3 +- src/views/demands/index.vue | 3 +- src/views/operations/activities/index.vue | 3 +- src/views/operations/courses/index.vue | 3 +- src/views/operations/news/index.vue | 3 +- src/views/students/index.vue | 3 +- src/views/system/audit-logs/index.vue | 3 +- src/views/system/dict/index.vue | 3 +- src/views/system/grid-members/index.vue | 3 +- src/views/system/menus/index.vue | 3 +- .../system/research-directions/index.vue | 3 +- src/views/system/roles/index.vue | 3 +- src/views/system/users/index.vue | 3 +- src/views/teachers/index.vue | 3 +- 23 files changed, 291 insertions(+), 73 deletions(-) create mode 100644 src/components/PageTitle.vue create mode 100644 src/components/RemotePagedSelect.vue diff --git a/src/api/admin/banners.ts b/src/api/admin/banners.ts index 1929d81..5d51e66 100644 --- a/src/api/admin/banners.ts +++ b/src/api/admin/banners.ts @@ -1,7 +1,7 @@ import { http } from '@/utils/http' import type { ApiBody, Paginated } from '@/api/types' -export type BannerType = 'course' | 'activity' | 'custom' +export type BannerType = 'course' | 'activity' | 'news' | 'custom' export interface BannerRow { id: number @@ -11,6 +11,8 @@ export interface BannerRow { course_title?: string | null activity_id?: number | null activity_title?: string | null + news_id?: number | null + news_title?: string | null title?: string | null cover_url?: string | null content_html?: string | null diff --git a/src/components/PageTitle.vue b/src/components/PageTitle.vue new file mode 100644 index 0000000..c7f5db3 --- /dev/null +++ b/src/components/PageTitle.vue @@ -0,0 +1,24 @@ + + + diff --git a/src/components/RemotePagedSelect.vue b/src/components/RemotePagedSelect.vue new file mode 100644 index 0000000..791f137 --- /dev/null +++ b/src/components/RemotePagedSelect.vue @@ -0,0 +1,122 @@ + + + + + diff --git a/src/router/index.ts b/src/router/index.ts index 590d11a..3cd2946 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -17,6 +17,11 @@ const router = createRouter({ ], }) +router.afterEach((to) => { + const title = typeof to.meta.title === 'string' ? to.meta.title : '' + document.title = title ? `${title} - S-lake高校雷达网` : 'S-lake高校雷达网' +}) + router.beforeEach(async (to, _from, next) => { const auth = useAuthStore() diff --git a/src/views/assets/banners/index.vue b/src/views/assets/banners/index.vue index a79aec1..f0783bb 100644 --- a/src/views/assets/banners/index.vue +++ b/src/views/assets/banners/index.vue @@ -1,4 +1,9 @@