This commit is contained in:
Junhui Chen 2025-08-07 01:25:32 +08:00
parent b3b31baab2
commit 12c3eb0901
2 changed files with 21 additions and 14 deletions

View File

@ -136,24 +136,24 @@ export default function AskScreen() {
// 使用新的WebSocket流处理hook使用实时模式
const { subscribeToWebSocket } = useWebSocketStreamHandler({
setUserMessages,
isMounted: isMountedRef.current,
isMounted: true, // 传递静态值hook内部会使用ref跟踪
enableBatching: false // AskScreen使用实时模式
});
// useFocusEffect(
// useCallback(() => {
// isMountedRef.current = true;
useFocusEffect(
useCallback(() => {
isMountedRef.current = true;
// // 订阅WebSocket消息
// const unsubscribe = subscribeToWebSocket();
// 订阅WebSocket消息
const unsubscribe = subscribeToWebSocket();
// return () => {
// // 取消订阅和执行清理
// unsubscribe();
// cleanup();
// };
// }, [subscribeToWebSocket, cleanup])
// );
return () => {
// 取消订阅和执行清理
unsubscribe();
cleanup();
};
}, [subscribeToWebSocket, cleanup])
);
// 创建动画样式
const welcomeStyle = useAnimatedStyle(() => {
@ -218,6 +218,13 @@ export default function AskScreen() {
}
}, [sessionId])
);
// 组件卸载时的清理
useEffect(() => {
return () => {
cleanup();
};
}, [cleanup]);
return (
<View style={[styles.container, { paddingTop: insets.top, paddingBottom: insets.bottom }]}>

View File

@ -44,7 +44,7 @@ export default function SendMessage(props: Props) {
// 使用新的WebSocket流处理hook启用批量处理模式
const { subscribeToWebSocket, cleanup } = useWebSocketStreamHandler({
setUserMessages,
isMounted: isMountedRef.current,
isMounted: true, // 传递静态值hook内部会使用ref跟踪
enableBatching: true,
renderInterval: RENDER_INTERVAL
});