fix: correct timeout type for browser environment

This commit is contained in:
Mikuisnotavailable
2026-01-10 09:40:42 +08:00
parent f9ee197086
commit fb8ae43083

View File

@@ -24,12 +24,12 @@ export default function Home() {
useEffect(() => { useEffect(() => {
// 添加防抖处理,减少状态更新频率 // 添加防抖处理,减少状态更新频率
let timeoutId: NodeJS.Timeout; let timeoutId: number | undefined;
const handleMouseMove = (e: MouseEvent) => { const handleMouseMove = (e: MouseEvent) => {
// 使用防抖每16ms更新一次约60fps // 使用防抖每16ms更新一次约60fps
clearTimeout(timeoutId); clearTimeout(timeoutId);
timeoutId = setTimeout(() => { timeoutId = window.setTimeout(() => {
setMousePosition({ x: e.clientX, y: e.clientY }); setMousePosition({ x: e.clientX, y: e.clientY });
}, 16); }, 16);
}; };
@@ -38,7 +38,9 @@ export default function Home() {
return () => { return () => {
window.removeEventListener('mousemove', handleMouseMove); window.removeEventListener('mousemove', handleMouseMove);
clearTimeout(timeoutId); if (timeoutId) {
clearTimeout(timeoutId);
}
}; };
}, []); }, []);