useState using Event Hooks
Thu Dec 28 2023 03:01:17 GMT+0000 (Coordinated Universal Time)
Saved by
@Marcelluki
// again, with hooks
function NeonCursor() {
const [position, setPosition] = React.useState({ top: 0, left: 0 });
React.useEffect(() => {
function handleMouseMove(event) {
setPosition({
top: event.pageY,
left: event.pageX,
});
}
// list of actions inside one hook
document.addEventListener('mousemove', handleMouseMove);
document.body.classList.add('no-cursor');
// we're returning a function that remove our effects
return () => {
document.body.classList.remove('no-cursor');
document.removeEventListener('mousemove', handleMouseMove);
};
});
return (
<img
src="./cursor.png"
width={30}
style={{
position: 'absolute',
top: position.top,
left: position.left,
pointerEvents: 'none',
}}
/>
);
}
content_copyCOPY
https://tripleten.com/trainer/web/lesson/f154f989-a90e-45ae-9dac-676c391a2449/task/8935acfd-1131-4a8d-81d3-f8649d295f32/
Comments