mirror of
https://git.mirrors.martin98.com/https://github.com/infiniflow/ragflow.git
synced 2025-08-15 06:16:02 +08:00
feat: The same query conditions on the search page should not request the interface every time the mind map drawer is opened. #2759 (#2760)
### What problem does this PR solve? feat: The same query conditions on the search page should not request the interface every time the mind map drawer is opened. #2759 ### Type of change - [ ] Bug Fix (non-breaking change which fixes an issue) - [x] New Feature (non-breaking change which adds functionality) - [ ] Documentation Update - [ ] Refactoring - [ ] Performance Improvement - [ ] Other (please describe):
This commit is contained in:
parent
7f44cf543a
commit
511d272d0d
@ -7,7 +7,7 @@ import {
|
|||||||
} from '@/hooks/logic-hooks';
|
} from '@/hooks/logic-hooks';
|
||||||
import { IAnswer } from '@/interfaces/database/chat';
|
import { IAnswer } from '@/interfaces/database/chat';
|
||||||
import api from '@/utils/api';
|
import api from '@/utils/api';
|
||||||
import { get, isEmpty, trim } from 'lodash';
|
import { get, isEmpty, isEqual, trim } from 'lodash';
|
||||||
import {
|
import {
|
||||||
ChangeEventHandler,
|
ChangeEventHandler,
|
||||||
useCallback,
|
useCallback,
|
||||||
@ -188,6 +188,7 @@ export const useTestRetrieval = (
|
|||||||
|
|
||||||
export const useShowMindMapDrawer = (kbIds: string[], question: string) => {
|
export const useShowMindMapDrawer = (kbIds: string[], question: string) => {
|
||||||
const { visible, showModal, hideModal } = useSetModalState();
|
const { visible, showModal, hideModal } = useSetModalState();
|
||||||
|
const ref = useRef<any>();
|
||||||
|
|
||||||
const {
|
const {
|
||||||
fetchMindMap,
|
fetchMindMap,
|
||||||
@ -196,7 +197,14 @@ export const useShowMindMapDrawer = (kbIds: string[], question: string) => {
|
|||||||
} = useFetchMindMap();
|
} = useFetchMindMap();
|
||||||
|
|
||||||
const handleShowModal = useCallback(() => {
|
const handleShowModal = useCallback(() => {
|
||||||
fetchMindMap({ question: trim(question), kb_ids: kbIds });
|
const searchParams = { question: trim(question), kb_ids: kbIds };
|
||||||
|
if (
|
||||||
|
!isEmpty(searchParams.question) &&
|
||||||
|
!isEqual(searchParams, ref.current)
|
||||||
|
) {
|
||||||
|
ref.current = searchParams;
|
||||||
|
fetchMindMap(searchParams);
|
||||||
|
}
|
||||||
showModal();
|
showModal();
|
||||||
}, [fetchMindMap, showModal, question, kbIds]);
|
}, [fetchMindMap, showModal, question, kbIds]);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user