From 8d6b4a426584711c05ff03ad9a91f7532c079f29 Mon Sep 17 00:00:00 2001
From: Jerry Yan <792602257@qq.com>
Date: Tue, 20 Jan 2026 10:34:13 +0800
Subject: [PATCH] =?UTF-8?q?refactor(home):=20=E7=A7=BB=E9=99=A4=E5=A4=96?=
=?UTF-8?q?=E9=83=A8=E9=93=BE=E6=8E=A5=E8=B7=B3=E8=BD=AC=E5=8A=9F=E8=83=BD?=
=?UTF-8?q?=E5=B9=B6=E4=BC=98=E5=8C=96=E8=B7=AF=E7=94=B1=E5=AF=BC=E8=88=AA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 移除百度链接跳转功能,改为内部路由导航到内容生成页面
- 删除无用的 isChecking 状态和 handleChatClick 处理函数
- 移除菜单项中的 externalLink 属性配置
- 简化侧边栏点击事件处理逻辑,移除外部链接检查代码
- 添加内容生成页面的路由配置
---
.../ContentGenerationPage.tsx | 23 ++++++++++++++++++
frontend/src/pages/Home/Home.tsx | 24 ++++---------------
frontend/src/pages/Layout/Sidebar.tsx | 6 -----
frontend/src/pages/Layout/menu.tsx | 1 -
frontend/src/routes/routes.ts | 5 ++++
5 files changed, 32 insertions(+), 27 deletions(-)
create mode 100644 frontend/src/pages/ContentGeneration/ContentGenerationPage.tsx
diff --git a/frontend/src/pages/ContentGeneration/ContentGenerationPage.tsx b/frontend/src/pages/ContentGeneration/ContentGenerationPage.tsx
new file mode 100644
index 0000000..e9f8076
--- /dev/null
+++ b/frontend/src/pages/ContentGeneration/ContentGenerationPage.tsx
@@ -0,0 +1,23 @@
+/**
+ * 内容生成页面
+ * 通过 iframe 加载外部页面
+ */
+export default function ContentGenerationPage() {
+ const iframeUrl = "https://www.baidu.com";
+
+ return (
+
+ );
+}
diff --git a/frontend/src/pages/Home/Home.tsx b/frontend/src/pages/Home/Home.tsx
index 42e4a57..68f90f3 100644
--- a/frontend/src/pages/Home/Home.tsx
+++ b/frontend/src/pages/Home/Home.tsx
@@ -10,21 +10,11 @@ import {
GitBranch,
} from "lucide-react";
import { features, menuItems } from "../Layout/menu";
-import { useState } from 'react';
import { useNavigate } from "react-router";
import { Card } from "antd";
export default function WelcomePage() {
const navigate = useNavigate();
- const [isChecking, setIsChecking] = useState(false);
-
- const handleChatClick = async () => {
- if (isChecking) return; // 防止重复点击
-
- setIsChecking(true);
-
- window.open('https://baidu.com')
- };
return (
@@ -51,11 +41,11 @@ export default function WelcomePage() {
开始使用
navigate("/data/content-generation")}
+ className="cursor-pointer rounded px-4 py-2 inline-flex items-center bg-gradient-to-r from-purple-600 to-pink-600 hover:from-purple-700 hover:to-pink-700 text-white shadow-lg"
>
- 内容生成
+ 内容生成
@@ -89,13 +79,7 @@ export default function WelcomePage() {
{menuItems.map((item) => (
{
- if (item.externalLink) {
- window.open(item.externalLink, "_blank");
- return;
- }
- navigate(item.children ? `/data/${item.children[0].id}`: `/data/${item.id}`);
- }}
+ onClick={() => navigate(item.children ? `/data/${item.children[0].id}`: `/data/${item.id}`)}
className="cursor-pointer hover:shadow-lg transition-all duration-200 border-0 shadow-md relative overflow-hidden group w-full md:w-[calc(50%-12px)] lg:w-[280px]"
>
diff --git a/frontend/src/pages/Layout/Sidebar.tsx b/frontend/src/pages/Layout/Sidebar.tsx
index 71ffb00..06a5da3 100644
--- a/frontend/src/pages/Layout/Sidebar.tsx
+++ b/frontend/src/pages/Layout/Sidebar.tsx
@@ -108,12 +108,6 @@ const AsiderAndHeaderLayout = () => {
selectedKeys={[activeItem]}
defaultOpenKeys={["synthesis"]}
onClick={({ key }) => {
- // 查找菜单项,检查是否有外部链接
- const menuItem = menuItems.find((item) => item.id === key);
- if (menuItem?.externalLink) {
- window.open(menuItem.externalLink, "_blank");
- return;
- }
setActiveItem(key);
navigate(`/data/${key}`);
}}
diff --git a/frontend/src/pages/Layout/menu.tsx b/frontend/src/pages/Layout/menu.tsx
index c442354..6fcb183 100644
--- a/frontend/src/pages/Layout/menu.tsx
+++ b/frontend/src/pages/Layout/menu.tsx
@@ -49,7 +49,6 @@ export const menuItems = [
icon: Sparkles,
description: "智能内容生成与创作",
color: "bg-purple-500",
- externalLink: "https://www.baidu.com",
},
// {
// id: "synthesis",
diff --git a/frontend/src/routes/routes.ts b/frontend/src/routes/routes.ts
index 5a7a37a..d2d6db8 100644
--- a/frontend/src/routes/routes.ts
+++ b/frontend/src/routes/routes.ts
@@ -44,6 +44,7 @@ import SynthFileTask from "@/pages/SynthesisTask/SynthFileTask.tsx";
import EvaluationDetailPage from "@/pages/DataEvaluation/Detail/TaskDetail.tsx";
import SynthDataDetail from "@/pages/SynthesisTask/SynthDataDetail.tsx";
import Home from "@/pages/Home/Home";
+import ContentGenerationPage from "@/pages/ContentGeneration/ContentGenerationPage";
const router = createBrowserRouter([
{
@@ -152,6 +153,10 @@ const router = createBrowserRouter([
},
],
},
+ {
+ path: "content-generation",
+ Component: ContentGenerationPage,
+ },
{
path: "synthesis/task",
children: [