Me falta algo simple aquí, necesito acceder a una Ref definida dentro de un useEffect . El depurador muestra que this no está definido y, por lo tanto, no puedo hacer this.refOverlay.current; .
// Ref const refOverlay = useRef(null); // Sample useEffect that references it useEffect(() => { if (props.mode === 'new') { let b = this; // Undefined let a = this.refOverlay.current; // Error on this line if (a) { console.log('ok'); } } }, [props.mode]); ... return ( {/* JSX Definition */} <OverlayTrigger ref={refOverlay} trigger="click" rootClose placement="bottom" overlay={popoverApprover}> <a href="javascript:void(0)" className="more-info">TEST</a> </OverlayTrigger> );Ha definido un componente basado en funciones. Que no tiene la palabra clave this Simplemente elimine la palabra clave this y estará bien.
No hay tal this en el componente de función.
const Title = () => { const ref = useRef(null) useEffect(() => { if (ref.current) { ref.current.WHATEVERYOUWANTHERE } }, []) }NOTA: un par de diferencias entre la clase y el componente de función
useState