Commit a6c3f7470789ebe502136753e8edd81c3e267da9

Authored by yibo
1 parent 9755a048

fix(web): 顶部导航改为 SPA 内跳转,不再打开新标签页

System Agents/Task Logs/Quota/Dream 及公司上下文的 Overview/Team/Workspace/
SOP/任务看板/Files/Messages 共 11 处导航链接原是 <a target="_blank">,改成
router-link 保持在当前页跳转。

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013aQrCrnXcYEz5GdQ6fnPZm
Showing 1 changed file with 22 additions and 22 deletions
web/src/components/AppNav.vue
@@ -5,21 +5,21 @@ @@ -5,21 +5,21 @@
5 <span class="nav-title">LemonBoss</span> 5 <span class="nav-title">LemonBoss</span>
6 </div> 6 </div>
7 <div class="nav-links"> 7 <div class="nav-links">
8 - <a href="/agent/master" target="_blank" class="nav-link" :class="{ active: $route.path.startsWith('/agent') }"> 8 + <router-link to="/agent/master" class="nav-link" :class="{ active: $route.path.startsWith('/agent') }">
9 <span>🤖</span> System Agents 9 <span>🤖</span> System Agents
10 - </a> 10 + </router-link>
11 11
12 - <a href="/tasks" target="_blank" class="nav-link" :class="{ active: $route.path.startsWith('/tasks') }"> 12 + <router-link to="/tasks" class="nav-link" :class="{ active: $route.path.startsWith('/tasks') }">
13 <span>📜</span> Task Logs 13 <span>📜</span> Task Logs
14 - </a> 14 + </router-link>
15 15
16 - <a href="/quota" target="_blank" class="nav-link" :class="{ active: $route.path === '/quota' }"> 16 + <router-link to="/quota" class="nav-link" :class="{ active: $route.path === '/quota' }">
17 <span>📊</span> Quota 17 <span>📊</span> Quota
18 - </a> 18 + </router-link>
19 19
20 - <a href="/dream" target="_blank" class="nav-link" :class="{ active: $route.path === '/dream' }"> 20 + <router-link to="/dream" class="nav-link" :class="{ active: $route.path === '/dream' }">
21 <span>🌙</span> Dream 21 <span>🌙</span> Dream
22 - </a> 22 + </router-link>
23 23
24 <div class="nav-divider"></div> 24 <div class="nav-divider"></div>
25 25
@@ -49,27 +49,27 @@ @@ -49,27 +49,27 @@
49 49
50 <!-- Contextual Company Navigation --> 50 <!-- Contextual Company Navigation -->
51 <template v-if="currentCompany"> 51 <template v-if="currentCompany">
52 - <a :href="`/${currentCompany.id}/overview`" target="_blank" class="nav-link" :class="{ active: $route.params.tab === 'overview' }"> 52 + <router-link :to="`/${currentCompany.id}/overview`" class="nav-link" :class="{ active: $route.params.tab === 'overview' }">
53 📊 Overview 53 📊 Overview
54 - </a>  
55 - <a :href="`/${currentCompany.id}/agents`" target="_blank" class="nav-link" :class="{ active: $route.params.tab === 'agents' }"> 54 + </router-link>
  55 + <router-link :to="`/${currentCompany.id}/agents`" class="nav-link" :class="{ active: $route.params.tab === 'agents' }">
56 👥 Team 56 👥 Team
57 - </a>  
58 - <a :href="`/${currentCompany.id}/workspace`" target="_blank" class="nav-link" :class="{ active: $route.params.tab === 'workspace' }"> 57 + </router-link>
  58 + <router-link :to="`/${currentCompany.id}/workspace`" class="nav-link" :class="{ active: $route.params.tab === 'workspace' }">
59 💼 Workspace 59 💼 Workspace
60 - </a>  
61 - <a :href="`/${currentCompany.id}/pipelines`" target="_blank" class="nav-link" :class="{ active: $route.params.tab === 'pipelines' || $route.params.tab === 'sop' }"> 60 + </router-link>
  61 + <router-link :to="`/${currentCompany.id}/pipelines`" class="nav-link" :class="{ active: $route.params.tab === 'pipelines' || $route.params.tab === 'sop' }">
62 ⚙️ SOP 62 ⚙️ SOP
63 - </a>  
64 - <a :href="`/${currentCompany.id}/task-board`" target="_blank" class="nav-link" :class="{ active: $route.path.endsWith('/task-board') }"> 63 + </router-link>
  64 + <router-link :to="`/${currentCompany.id}/task-board`" class="nav-link" :class="{ active: $route.path.endsWith('/task-board') }">
65 🗂️ 任务看板 65 🗂️ 任务看板
66 - </a>  
67 - <a :href="`/${currentCompany.id}/files`" target="_blank" class="nav-link" :class="{ active: $route.params.tab === 'files' }"> 66 + </router-link>
  67 + <router-link :to="`/${currentCompany.id}/files`" class="nav-link" :class="{ active: $route.params.tab === 'files' }">
68 📁 Files 68 📁 Files
69 - </a>  
70 - <a :href="`/${currentCompany.id}/messages`" target="_blank" class="nav-link" :class="{ active: $route.params.tab === 'messages' }"> 69 + </router-link>
  70 + <router-link :to="`/${currentCompany.id}/messages`" class="nav-link" :class="{ active: $route.params.tab === 'messages' }">
71 💬 Messages 71 💬 Messages
72 - </a> 72 + </router-link>
73 </template> 73 </template>
74 </div> 74 </div>
75 75