fix: auto send delay (#3352)

This commit is contained in:
Archer
2024-12-10 09:51:49 +08:00
committed by shilin66
parent 094f3ff5ea
commit 652a83ef92

View File

@@ -58,7 +58,7 @@ import dynamic from 'next/dynamic';
import type { StreamResponseType } from '@/web/common/api/fetch'; import type { StreamResponseType } from '@/web/common/api/fetch';
import { useContextSelector } from 'use-context-selector'; import { useContextSelector } from 'use-context-selector';
import { useSystem } from '@fastgpt/web/hooks/useSystem'; import { useSystem } from '@fastgpt/web/hooks/useSystem';
import { useCreation, useMemoizedFn, useThrottleFn } from 'ahooks'; import { useCreation, useDebounceEffect, useMemoizedFn, useThrottleFn } from 'ahooks';
import MyIcon from '@fastgpt/web/components/common/Icon'; import MyIcon from '@fastgpt/web/components/common/Icon';
import { mergeChatResponseData } from '@fastgpt/global/core/chat/utils'; import { mergeChatResponseData } from '@fastgpt/global/core/chat/utils';
import { getWebReqUrl } from '@fastgpt/web/common/system/utils'; import { getWebReqUrl } from '@fastgpt/web/common/system/utils';
@@ -380,6 +380,7 @@ const ChatBox = ({
async ({ variables = {} }) => { async ({ variables = {} }) => {
if (!onStartChat) return; if (!onStartChat) return;
if (isChatting) { if (isChatting) {
!hideInUI &&
toast({ toast({
title: t('chat:is_chatting'), title: t('chat:is_chatting'),
status: 'warning' status: 'warning'
@@ -834,7 +835,8 @@ const ChatBox = ({
}, [isReady, resetInputVal, sendPrompt]); }, [isReady, resetInputVal, sendPrompt]);
// Auto send prompt // Auto send prompt
useEffect(() => { useDebounceEffect(
() => {
if ( if (
isReady && isReady &&
chatBoxData?.app?.chatConfig?.autoExecute?.open && chatBoxData?.app?.chatConfig?.autoExecute?.open &&
@@ -847,14 +849,19 @@ const ChatBox = ({
hideInUI: true hideInUI: true
}); });
} }
}, [ },
[
isReady, isReady,
chatStarted, chatStarted,
chatRecords.length, chatRecords.length,
isChatRecordsLoaded, isChatRecordsLoaded,
sendPrompt, sendPrompt,
chatBoxData?.app?.chatConfig?.autoExecute chatBoxData?.app?.chatConfig?.autoExecute
]); ],
{
wait: 500
}
);
// output data // output data
useImperativeHandle(ChatBoxRef, () => ({ useImperativeHandle(ChatBoxRef, () => ({