From a96dbb67fe0cd986b5eee062322cbadcd5150908 Mon Sep 17 00:00:00 2001 From: wangqiao Date: Wed, 3 Sep 2025 11:33:00 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E9=87=8D=E6=9E=84=E5=AF=BC?= =?UTF-8?q?=E8=88=AA=E7=BB=84=E4=BB=B6=E4=BD=BF=E7=94=A8=E5=8A=A8=E6=80=81?= =?UTF-8?q?TDK=E6=95=B0=E6=8D=AE=E5=92=8C=E8=B7=AF=E7=94=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/kl-nav-tab/index.vue | 43 ++++++------------- middleware/tdk.global.ts | 19 ++++++++ .../[pageSize]/[[editions]]/[[source]].vue | 2 +- pages/drawe/index.vue | 2 +- .../[pageSize]/[[editions]]/[[source]].vue | 1 - 5 files changed, 33 insertions(+), 34 deletions(-) create mode 100644 middleware/tdk.global.ts diff --git a/components/kl-nav-tab/index.vue b/components/kl-nav-tab/index.vue index a16ff2d..e55aac8 100644 --- a/components/kl-nav-tab/index.vue +++ b/components/kl-nav-tab/index.vue @@ -3,7 +3,7 @@
图夕夕
- {{ item }} + {{ item.remark }}
{ + const res = await getTDKList() + // 添加首页 + if (!res.data.find((c) => c.remark === '首页')) { + res.data.unshift({ remark: '首页', path: '/' }) + } + return res.data + }) + // const navList = ref(['首页', '图纸', '文本', '模型', '国外专区', '工具箱', '交流频道']) const loading = ref(false) const handleHot = async () => { @@ -147,34 +155,7 @@ } const handleClick = (item: string) => { - switch (item) { - case '首页': - navigateTo({ path: '/' }) // 修改为在新窗口打开 - break - case '图纸': - navigateTo('/drawe') // 修改为在新窗口打开 - break - case '文本': - navigateTo('/text') // 修改为在新窗口打开 - break - case '模型': - navigateTo('/model') // 修改为在新窗口打开 - break - case '国外专区': - navigateTo('/foreign') // 修改为在新窗口打开 - break - case '牛人社区': - navigateTo('/community') // 修改为在新窗口打开 - break - case '交流频道': - navigateTo('/channel') // 修改为在新窗口打开 - break - case '工具箱': - navigateTo('/toolbox') // 修改为在新窗口打开 - break - default: - break - } + navigateTo(item) } const handleLogin = () => { app?.$openLogin() // 调用全局方法 diff --git a/middleware/tdk.global.ts b/middleware/tdk.global.ts new file mode 100644 index 0000000..b022629 --- /dev/null +++ b/middleware/tdk.global.ts @@ -0,0 +1,19 @@ +import { getTDKList } from '~/api/home/index' +// middleware/tdk.global.ts +export default defineNuxtRouteMiddleware(async (to) => { + const { data: tdkData } = await getTDKList() + // 获取当前路由 + const currentPath = to.path; + // 根据当前路由获取对应的TDK数据 + const currentTdk = tdkData.find((item) => item.path === currentPath) + + if (currentTdk) { + useHead({ + title: currentTdk.title, + meta: [ + { name: 'description', content: currentTdk.describeText }, + { name: 'keywords', content: currentTdk.keyword } + ] + }) + } + }) \ No newline at end of file diff --git a/pages/drawe/[projectType]/[pageNo]/[pageSize]/[[editions]]/[[source]].vue b/pages/drawe/[projectType]/[pageNo]/[pageSize]/[[editions]]/[[source]].vue index 864b8c6..1a1d9a1 100644 --- a/pages/drawe/[projectType]/[pageNo]/[pageSize]/[[editions]]/[[source]].vue +++ b/pages/drawe/[projectType]/[pageNo]/[pageSize]/[[editions]]/[[source]].vue @@ -1,6 +1,6 @@