From f6958b0cae5cc06a9126cc01a3f74ba52f7364e9 Mon Sep 17 00:00:00 2001 From: lxfight <1686540385@qq.com> Date: Fri, 7 Aug 2026 10:50:24 +0800 Subject: [PATCH] fix(kb): improve knowledge base responsive layout --- .../src/views/knowledge-base/KBDetail.vue | 12 ++- dashboard/src/views/knowledge-base/KBList.vue | 15 +++- .../components/DocumentsTab.vue | 22 +++++- .../components/RetrievalTab.vue | 76 +++++++++++++++++-- 4 files changed, 114 insertions(+), 11 deletions(-) diff --git a/dashboard/src/views/knowledge-base/KBDetail.vue b/dashboard/src/views/knowledge-base/KBDetail.vue index e00ce9bb38..8dc72e9e64 100644 --- a/dashboard/src/views/knowledge-base/KBDetail.vue +++ b/dashboard/src/views/knowledge-base/KBDetail.vue @@ -16,7 +16,7 @@
- + mdi-information-outline {{ t('tabs.overview') }} @@ -247,9 +247,14 @@ watch( diff --git a/dashboard/src/views/knowledge-base/components/RetrievalTab.vue b/dashboard/src/views/knowledge-base/components/RetrievalTab.vue index 289132667f..e85efe6300 100644 --- a/dashboard/src/views/knowledge-base/components/RetrievalTab.vue +++ b/dashboard/src/views/knowledge-base/components/RetrievalTab.vue @@ -57,9 +57,9 @@
-
+

{{ t('retrieval.results') }}

- + {{ results.length }} {{ t('retrieval.results') }}
@@ -67,15 +67,15 @@
- - + + #{{ index + 1 }} - + {{ t('retrieval.chunk', { index: result.chunk_index }) }} -
- +
+ mdi-file-document {{ result.doc_name }} @@ -85,7 +85,7 @@
- + {{ t('retrieval.score') }}: {{ result.score.toFixed(4) }} @@ -240,4 +240,64 @@ const getScoreColor = (score: number) => { overflow-y: auto; font-size: 13px; } + +.result-card-header, +.result-meta { + gap: 8px; +} + +.results-heading { + gap: 12px; +} + +.result-meta { + align-items: center; + display: flex; + min-width: 0; +} + +.result-document-chip { + max-width: min(280px, 40vw); +} + +.result-document-chip :deep(.v-chip__content) { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +@media (max-width: 768px) { + .result-card-header { + align-items: flex-start !important; + flex-wrap: wrap; + } + + .result-title { + flex: 1 1 auto; + min-width: 0; + } + + .result-meta { + flex: 1 1 100%; + flex-wrap: wrap; + margin-left: 0 !important; + order: 2; + } + + .result-document-chip { + max-width: 100%; + } + + .result-score { + margin-left: auto; + } + + .results-heading { + flex-wrap: wrap; + } + + .results-heading .v-chip { + margin-left: 0 !important; + } +}