Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

289
Vistas
Reaccionar detecta el cambio en el src de iframe

Tengo un elemento iframe dentro de mi componente y necesito detectar de alguna manera cuándo cambia la URL de ese iframe. Lo que he probado hasta ahora:

  1. Se agregó la devolución de llamada onLoad , pero esto no se activa cada vez que redirijo en el iframe
  2. Usé React.useCallback pero tampoco funciona como quería
  3. Cree un tiempo de timeout y obtenga la URL del iframe cada x segundos

Ejemplo de código minimalista a continuación

 export const XComponent = (props: XComponentProps) => { const ref = React.useRef<any>(); 1. const onLoad = () => { const url = ref.current.contentWindow.location.href; // do stg with url } 2. const getRef = React.useCallback((node: any) => { // store node into state, this was not triggered properly either }, []); 3. React.useEffect(() => { const interval = setInterval(() => { const url = ref.current.contentWindow.location.href; }, 1000); return () => clearInterval(interval); }, []); return ( <div className={ styles.albertStoremanTab }> <div className={ styles.container }> <iframe id={"iframe-my-id"} onLoad={onLoad} src={props.defaultUrl} ref={ref}></iframe> </div> </div> ); };
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Así de simple:

 useEffect(() => { // It runs only when defaultUrl changes }, [props.defaultUrl])
about 4 years ago · Juan Pablo Isaza Denunciar

0

¿Intentó usar ref.current en la matriz de dependencias de useEffect?

useEffect(() => { setURL(ref.actual.contentWindow.ubicación.href) }, [ref.actual])

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda