Hi I was playing around with creating a custom cursor in react. The cursor works fine, however a few seconds later after a few scrolls or changing pages, i get the following error: Uncaught TypeError: Cannot read property 'clientWidth' of null.
//follows the cursor
const customRef = React.useRef(null)
React.useEffect(() => {
document.addEventListener('mousemove', (e) => {
const { clientX, clientY } = e
const mouseX = clientX - customRef.current.clientWidth / 2
const mouseY = clientY - customRef.current.clientHeight / 2
customRef.current.style.transform = `translate3d(${mouseX}px, ${mouseY}px, 0)`
})
}, [])
return (
<div className="app-cursor" ref={customRef} />
)
}
export default CustomCursor
Here's the CSS:
.app-cursor {
z-index: 100;
border-radius: 50%;
width: 60px;
height: 60px;
border: 1px solid rgb(168, 163, 163);
pointer-events: none;
overflow: hidden;
transform: translate3d(0, 0, 0);
position: fixed;
}
Any help would be appreciated.
Thanks in advance.