From 04a68a85dd8956ab1ed23443791f832e65e567e5 Mon Sep 17 00:00:00 2001 From: "1808837298@qq.com" <1808837298@qq.com> Date: Fri, 27 Sep 2024 20:48:55 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BC=98=E5=8C=96playground=E6=A0=B7?= =?UTF-8?q?=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/components/Playground.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/web/src/components/Playground.js b/web/src/components/Playground.js index c080e13..459cfb0 100644 --- a/web/src/components/Playground.js +++ b/web/src/components/Playground.js @@ -144,7 +144,7 @@ const Playground = () => { source.addEventListener("error", (e) => { generateMockResponse(e.data) - completeMessage(); + completeMessage('error') }); source.addEventListener("readystatechange", (e) => { @@ -206,12 +206,17 @@ const Playground = () => { }); }, [getSystemMessage]); - const completeMessage = useCallback(() => { + const completeMessage = useCallback((status = 'complete') => { + // console.log("Complete Message: ", status) setMessage((prevMessage) => { const lastMessage = prevMessage[prevMessage.length - 1]; + // only change the status if the last message is not complete and not error + if (lastMessage.status === 'complete' || lastMessage.status === 'error') { + return prevMessage; + } return [ ...prevMessage.slice(0, -1), - { ...lastMessage, status: 'complete' } + { ...lastMessage, status: status } ]; }); }, [])