避免生图占位时丢失用户消息
This commit is contained in:
parent
4c24001c2f
commit
21a6280db8
@ -36,6 +36,9 @@ export function useAutoResume({
|
|||||||
}, [autoResume, initialMessages.at, resumeStream]);
|
}, [autoResume, initialMessages.at, resumeStream]);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
if (!autoResume) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (!dataStream) {
|
if (!dataStream) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -43,11 +46,16 @@ export function useAutoResume({
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const dataPart = dataStream[0];
|
const dataPart = dataStream[dataStream.length - 1];
|
||||||
|
|
||||||
if (dataPart.type === "data-appendMessage") {
|
if (dataPart.type === "data-appendMessage") {
|
||||||
const message = JSON.parse(dataPart.data);
|
const message = JSON.parse(dataPart.data);
|
||||||
setMessages([...initialMessages, message]);
|
setMessages((prev) => {
|
||||||
|
if (prev.some((m) => m.id === message.id)) {
|
||||||
|
return prev;
|
||||||
|
}
|
||||||
|
return [...prev, message];
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}, [dataStream, initialMessages, setMessages]);
|
}, [autoResume, dataStream, setMessages]);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user