From 08134d45988da556061e7b9447ca45b973102c4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Thu, 29 Jan 2026 13:38:58 +0800 Subject: [PATCH] =?UTF-8?q?feat(home):=20=E6=9B=BF=E6=8D=A2=E9=A6=96?= =?UTF-8?q?=E9=A1=B5=E8=BD=AE=E6=92=AD=E5=9B=BE=E5=AE=9E=E7=8E=B0=E4=B8=BA?= =?UTF-8?q?=E5=B9=BF=E5=91=8A=E7=B3=BB=E7=BB=9F=E9=A9=B1=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除原有的硬编码轮播图组件和相关样式 - 新增 getAdByCode 方法用于获取广告数据 - 实现解析广告数据的工具函数 parseSlides 和 parsePx - 集成 useAsyncData 获取 flash 广告数据 - 添加备用图片以确保加载失败时的显示 - 更新页面样式适配新的轮播组件结构 --- app/api/cms/cmsAd/index.ts | 10 ++ app/components/Carousel.vue | 112 +++++++++++++++++ app/pages/index.vue | 238 ++++++++++++------------------------ 3 files changed, 197 insertions(+), 163 deletions(-) create mode 100644 app/components/Carousel.vue diff --git a/app/api/cms/cmsAd/index.ts b/app/api/cms/cmsAd/index.ts index c465bd4..412c1d2 100644 --- a/app/api/cms/cmsAd/index.ts +++ b/app/api/cms/cmsAd/index.ts @@ -104,3 +104,13 @@ export async function getCmsAd(id: number) { } return Promise.reject(new Error(res.data.message)); } + +export async function getAdByCode(code: string){ + const res = await request.get>( + MODULES_API_URL + '/cms/cms-ad/getByCode/' + code + ); + if (res.data.code === 0 && res.data.data) { + return res.data.data; + } + return Promise.reject(new Error(res.data.message)); +} diff --git a/app/components/Carousel.vue b/app/components/Carousel.vue new file mode 100644 index 0000000..fef6073 --- /dev/null +++ b/app/components/Carousel.vue @@ -0,0 +1,112 @@ + + + + + diff --git a/app/pages/index.vue b/app/pages/index.vue index e72fddc..c8029dc 100644 --- a/app/pages/index.vue +++ b/app/pages/index.vue @@ -1,85 +1,6 @@