react-dev-inspector
Version:
dev-tool for inspect react components and jump to local IDE for component code.
21 lines (20 loc) • 577 B
JavaScript
import { useEffect, useRef, } from 'react';
export const useMousePosition = ({ disable }) => {
const mouseRef = useRef({
x: 0,
y: 0,
});
const recordMousePoint = (ev) => {
mouseRef.current.x = ev.clientX;
mouseRef.current.y = ev.clientY;
};
useEffect(() => {
if (!disable) {
document.addEventListener('mousemove', recordMousePoint, true);
}
return () => {
document.removeEventListener('mousemove', recordMousePoint, true);
};
}, [disable]);
return mouseRef;
};