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