throttle mouse events

This commit is contained in:
Gavin McDonald
2025-07-02 12:07:14 -04:00
parent d531a9bd6a
commit 522fdf106e
2 changed files with 7 additions and 7 deletions

View File

@@ -1,5 +1,8 @@
import { useEffect, useRef, useState } from 'react';
import { useAppContext } from '@/app/AppContext';
import throttle from '@/tools/throttle';
import { thirtyFPS } from '@/constants/time';
import type { Tilt } from '@/types';
const ZERO_ROTATION = 'rotateX(0deg) rotateY(0deg)';
@@ -90,7 +93,7 @@ export default function TiltCard({
sheen.style.opacity = '0';
}, [untilt]);
const handleMouseMove = (e: React.MouseEvent) => {
const handleMouseMove = throttle((e: React.MouseEvent) => {
const card = cardRef.current;
if (!card) return;
@@ -107,7 +110,7 @@ export default function TiltCard({
newTilt[cardIndex] = { rotateX, rotateY };
setTilt(newTilt);
};
}, thirtyFPS);
const handleMouseLeave = () => {
setTilt([]);