From 4497343b678de24293956fff538cad862753fb55 Mon Sep 17 00:00:00 2001
From: luckyasme <807254037@qq.com>
Date: Thu, 24 Apr 2025 10:35:44 +0800
Subject: [PATCH 1/3] =?UTF-8?q?fix:=20=E9=9D=A2=E5=8C=85=E5=B1=91=E3=80=81?=
=?UTF-8?q?=E8=8F=9C=E5=8D=95=E6=B7=BB=E5=8A=A0a=E9=93=BE=E6=8E=A5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/components/doc/DocBreadCrumb.vue | 6 ++--
app/.vitepress/src/components/doc/DocMenu.vue | 30 ++++++++++++------
.../src/components/menu/RecursionMenuItem.vue | 31 ++++++++++++++-----
app/.vitepress/src/views/home/TheHome.vue | 17 +++++++---
.../src/views/search/TheSearchResult.vue | 6 ++--
5 files changed, 64 insertions(+), 26 deletions(-)
diff --git a/app/.vitepress/src/components/doc/DocBreadCrumb.vue b/app/.vitepress/src/components/doc/DocBreadCrumb.vue
index 24ca140bf..75d56b66a 100644
--- a/app/.vitepress/src/components/doc/DocBreadCrumb.vue
+++ b/app/.vitepress/src/components/doc/DocBreadCrumb.vue
@@ -45,9 +45,11 @@ const goToPage = (href: string) => {
- {{ t('home.docCenter') }}
+ {{ t('home.docCenter') }}
- {{ nodeStore.moduleNode?.label }}
+ {{
+ nodeStore.moduleNode?.label
+ }}
{{ searchStore.isSearching ? t('docs.searchResult') : currentTitle }}
diff --git a/app/.vitepress/src/components/doc/DocMenu.vue b/app/.vitepress/src/components/doc/DocMenu.vue
index 0025e0fce..1dfc77355 100644
--- a/app/.vitepress/src/components/doc/DocMenu.vue
+++ b/app/.vitepress/src/components/doc/DocMenu.vue
@@ -1,12 +1,12 @@
diff --git a/app/.vitepress/src/views/home/TheHome.vue b/app/.vitepress/src/views/home/TheHome.vue
index da1aba004..17aab9749 100644
--- a/app/.vitepress/src/views/home/TheHome.vue
+++ b/app/.vitepress/src/views/home/TheHome.vue
@@ -43,6 +43,7 @@ const getSearchUrl = (val: string) => {
}
const enterSearchDoc = (val: string) => {
+ clearTimeout(timer);
if (!val.trim()) {
return;
}
diff --git a/app/.vitepress/src/views/search/TheSearchResult.vue b/app/.vitepress/src/views/search/TheSearchResult.vue
index 719ac2c34..c8badd748 100644
--- a/app/.vitepress/src/views/search/TheSearchResult.vue
+++ b/app/.vitepress/src/views/search/TheSearchResult.vue
@@ -17,6 +17,7 @@ import { useLocale } from '@/composables/useLocale';
import { useSearchingStore } from '@/stores/common';
import { scrollToTop } from '@/utils/common';
import { useNodeStore } from '@/stores/node';
+import { useViewStore } from '@/stores/view';
const props = defineProps({
// 菜单数据
@@ -32,6 +33,7 @@ const { t, locale } = useLocale();
const searchStore = useSearchingStore();
const { isPhone } = useScreen();
const nodeStore = useNodeStore();
+const viewStore = useViewStore();
// n叉树
const tree = computed(() => {
@@ -47,30 +49,6 @@ const pageSizes = ref([10, 20, 50]);
// 是否加载loading
const isLoading = ref(false);
-const searchPath = computed(() => {
- const arr = route.path.split('/');
- let url = '';
- // 根节点
- if (arr.length === 3) {
- url = arr[arr.length - 1].replace('.html', '');
- } else {
- url = arr.slice(2, arr.length - 1).join('/');
- }
- return `${url}`;
-});
-
-//搜索参数
-const searchParams = computed(() => {
- const version = route.path.split('/')?.[3] || searchStore.version;
- return {
- keyword: searchStore.keyword,
- lang: locale.value,
- page: currentPage.value,
- version: version,
- path: searchPath.value,
- };
-});
-
// ----------------------- 监听是否加载loading -----------------------
watch(
() => searchStore.isLoading,
@@ -84,30 +62,37 @@ watch(
const searchResult = async () => {
try {
searchStore.setIsLoading(true);
- const res = await getSearchDocs(searchParams.value);
+ const url = (viewStore.isOverview ? nodeStore.moduleNode?.href : nodeStore.manualNode?.href) || route.path;
+ const res = await getSearchDocs({
+ keyword: searchStore.keyword,
+ lang: locale.value,
+ page: currentPage.value,
+ version: route.path.split('/')?.[3] || searchStore.version,
+ path: url.replace(`/${locale.value}/`, ''),
+ });
let records: SearchDocItemT[] = [];
if (res.status == 200) {
records = res.obj.records;
- }
- records.map((item) => {
- if (item.path) {
- item.path = `/${item.path}.html`;
+ records.map((item) => {
+ if (item.path) {
+ item.path = `/${item.path}.html`;
- let pathTempData = [];
+ let pathTempData = [];
- let node = tree.value.getNode(tree.value.root, 'href', item.path);
+ let node = tree.value.getNode(tree.value.root, 'href', item.path);
- if (node) {
- while (node && node.depth !== 0 && node.parent) {
- pathTempData.unshift(node);
- node = node?.parent;
+ if (node) {
+ while (node && node.depth !== 0 && node.parent) {
+ pathTempData.unshift(node);
+ node = node?.parent;
+ }
}
- }
- item.sourceData = pathTempData.slice(pathTempData.length - 1);
- }
- });
+ item.sourceData = pathTempData.slice(pathTempData.length - 1);
+ }
+ });
+ }
result.value = records;
total.value = res?.obj?.count || 0;
--
Gitee