diff --git a/packages/web/src/components/ChatList/index.vue b/packages/web/src/components/ChatList/index.vue
index 1d63b3f7..6c90b77d 100644
--- a/packages/web/src/components/ChatList/index.vue
+++ b/packages/web/src/components/ChatList/index.vue
@@ -10,7 +10,7 @@
/>
@@ -23,7 +23,7 @@ import { reactive } from 'vue'
import type { user, robot } from '@memoh/shared'
// 模拟一下数据
-const chatList = reactive<(((user | robot) & { action: 'robot' | 'user' }))[]>([{
+const chatList = reactive<(((user | robot)))[]>([{
description: 'fjiwofwofjewifwe', time: new Date, id: 2, action: 'user'
}, {
description: 'fjiwofwofjefwfewfwifwe', time: new Date, id: 1000, action: 'robot', type: 'Openai Gpt5'
diff --git a/packages/web/src/components/MainContainer/index.vue b/packages/web/src/components/MainContainer/index.vue
index d6db8bbd..c915149d 100644
--- a/packages/web/src/components/MainContainer/index.vue
+++ b/packages/web/src/components/MainContainer/index.vue
@@ -11,15 +11,25 @@
/>
-
-
-
- 对话
-
+
+
+
+
+ {{ breadcrumbItem.breadcrumb }}
+
+
+
+
+
+
+
+ {{ breadcrumbItem.breadcrumb }}
+
+
+
@@ -35,7 +45,6 @@
\ No newline at end of file
diff --git a/packages/web/src/components/Sidebar/index.vue b/packages/web/src/components/Sidebar/index.vue
index bfb27738..2bf45b4a 100644
--- a/packages/web/src/components/Sidebar/index.vue
+++ b/packages/web/src/components/Sidebar/index.vue
@@ -1,18 +1,18 @@
-
+
-
+
-
+
Memoh
@@ -32,7 +32,10 @@
>
-
+
-
+
@@ -58,42 +61,46 @@ import {
SidebarGroup,
SidebarGroupContent,
SidebarGroupLabel,
- SidebarHeader,
+ SidebarHeader,
SidebarMenu,
SidebarMenuButton,
- SidebarMenuItem,
- SidebarRail,
+ SidebarMenuItem,
+ SidebarRail,
CollapsibleTrigger,
Collapsible
-
+
} from '@memoh/ui'
-import { reactive, inject } from 'vue'
+import { reactive } from 'vue'
import SvgIcon from '@jamescoyle/vue-icon'
-import { mdiRobot, mdiChatOutline, mdiCogBox, mdiListBox, mdiHome } from '@mdi/js'
+import { mdiRobot, mdiChatOutline, mdiCogBox, mdiListBox, mdiHome, mdiBookArrowDown } from '@mdi/js'
+import { useRouter } from 'vue-router'
-
-const open=inject('sideBarIsOpen')
+const router = useRouter()
const sidebarInfo = reactive([{
title: '创建对话',
- path: '/',
+ name: 'chat',
icon: mdiChatOutline
}, {
title: '主页',
- path: '/',
+ name: 'home',
icon: mdiHome
},
- {
+{
title: '模型配置',
- path: '/',
+ name: 'models',
icon: mdiRobot
- }, {
- title: '环境设置',
- path: '/',
+}, {
+ title: '设置',
+ name: 'settings',
icon: mdiCogBox
- }, {
- title: '平台',
- path: '/',
+}, {
+ title: 'MCP',
+ name: 'mcp',
icon: mdiListBox
+}, {
+ title: '平台',
+ name: 'platform',
+ icon: mdiBookArrowDown
}])
\ No newline at end of file
diff --git a/packages/web/src/pages/home/index.vue b/packages/web/src/pages/home/index.vue
new file mode 100644
index 00000000..61ec2a60
--- /dev/null
+++ b/packages/web/src/pages/home/index.vue
@@ -0,0 +1,5 @@
+
+
+
\ No newline at end of file
diff --git a/packages/web/src/pages/mcp/index.vue b/packages/web/src/pages/mcp/index.vue
new file mode 100644
index 00000000..57942872
--- /dev/null
+++ b/packages/web/src/pages/mcp/index.vue
@@ -0,0 +1,5 @@
+
+
+
\ No newline at end of file
diff --git a/packages/web/src/pages/models/index.vue b/packages/web/src/pages/models/index.vue
new file mode 100644
index 00000000..ff69061e
--- /dev/null
+++ b/packages/web/src/pages/models/index.vue
@@ -0,0 +1,5 @@
+
+
+
\ No newline at end of file
diff --git a/packages/web/src/pages/platform/index.vue b/packages/web/src/pages/platform/index.vue
new file mode 100644
index 00000000..34740e7e
--- /dev/null
+++ b/packages/web/src/pages/platform/index.vue
@@ -0,0 +1,5 @@
+
+
+
\ No newline at end of file
diff --git a/packages/web/src/pages/settings/index.vue b/packages/web/src/pages/settings/index.vue
new file mode 100644
index 00000000..f57777fe
--- /dev/null
+++ b/packages/web/src/pages/settings/index.vue
@@ -0,0 +1,5 @@
+
+
+
\ No newline at end of file
diff --git a/packages/web/src/router.ts b/packages/web/src/router.ts
index 5bb6e80a..52efcfbf 100644
--- a/packages/web/src/router.ts
+++ b/packages/web/src/router.ts
@@ -14,10 +14,52 @@ const routes = [
name: 'Main',
component: () => import('@/pages/mainSection/index.vue'),
path: '/main',
- redirect:'/main/chat',
+ redirect: '/main/chat',
+ meta: {
+ breadcrumb: '主菜单'
+ },
children: [{
+ name: 'chat',
path: 'chat',
- component: () => import('@/pages/chat/index.vue')
+ component: () => import('@/pages/chat/index.vue'),
+ meta: {
+ breadcrumb: '对话'
+ }
+ }, {
+ name: 'home',
+ path: 'home',
+ component: () => import('@/pages/home/index.vue'),
+ meta: {
+ breadcrumb: '主页'
+ }
+ }, {
+ name: 'models',
+ path: 'models',
+ component: () => import('@/pages/models/index.vue'),
+ meta: {
+ breadcrumb: '模型管理'
+ }
+ }, {
+ name: 'settings',
+ path: 'settings',
+ component: () => import('@/pages/settings/index.vue'),
+ meta: {
+ breadcrumb: '设置'
+ }
+ }, {
+ name: 'mcp',
+ path: 'mcp',
+ component: () => import('@/pages/mcp/index.vue'),
+ meta: {
+ breadcrumb: 'MCP'
+ }
+ }, {
+ name: 'platform',
+ path: 'platform',
+ component: () => import('@/pages/platform/index.vue'),
+ meta: {
+ breadcrumb: '平台'
+ }
}]
}