error fixed
we must refresh for new msg
This commit is contained in:
parent
9cbdc35903
commit
76fa04d129
Binary file not shown.
@ -78,6 +78,9 @@ export function ChatProvider({ children }: { children: React.ReactNode }) {
|
||||
const activeThreadIdRef = useRef<string | null>(null);
|
||||
const currentUserIdRef = useRef<string | undefined>(undefined);
|
||||
const refreshThreadsRef = useRef<() => Promise<void>>(async () => {});
|
||||
const refreshMessagesRef = useRef<(threadId: string) => Promise<void>>(
|
||||
async () => {},
|
||||
);
|
||||
const markThreadReadRef = useRef<
|
||||
(threadId: string, lastReadMessageId?: string) => Promise<void>
|
||||
>(async () => {});
|
||||
@ -283,6 +286,10 @@ export function ChatProvider({ children }: { children: React.ReactNode }) {
|
||||
refreshThreadsRef.current = refreshThreads;
|
||||
}, [refreshThreads]);
|
||||
|
||||
useEffect(() => {
|
||||
refreshMessagesRef.current = refreshMessages;
|
||||
}, [refreshMessages]);
|
||||
|
||||
useEffect(() => {
|
||||
markThreadReadRef.current = markThreadRead;
|
||||
}, [markThreadRead]);
|
||||
@ -587,7 +594,7 @@ export function ChatProvider({ children }: { children: React.ReactNode }) {
|
||||
socketRef.current.emit("chat:subscribe", { threadId: activeThreadId });
|
||||
}
|
||||
|
||||
void refreshMessages(activeThreadId);
|
||||
void refreshMessagesRef.current(activeThreadId);
|
||||
|
||||
setThreads((prev) =>
|
||||
prev.map((thread) =>
|
||||
@ -602,7 +609,7 @@ export function ChatProvider({ children }: { children: React.ReactNode }) {
|
||||
});
|
||||
}
|
||||
};
|
||||
}, [activeThreadId, refreshMessages, socketConnected]);
|
||||
}, [activeThreadId, socketConnected]);
|
||||
|
||||
useEffect(() => {
|
||||
if (!activeThreadId) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user