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

179
Vistas
Obtener en React haciendo llamadas continuamente

Estoy obteniendo los datos del archivo json, pero el problema es que cuando revisé la pestaña de red. Me están llamando continuamente, ¿qué puedo hacer para resolver el problema? : Imagen de la pestaña Red

 class Banner extends Component { constructor(props) { super(props); this.state = { buttonLink:"", bannerImg:"" }; } render() { const a = fetch("./logo.json").then(response => response.json()) .then((temp1)=> {this.setState({buttonLink:temp1.buttonLink,bannerImg:temp1.bannerImg}); }); return(.... <img src={this.state.bannerImg}></img> .... )
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

en el componente de clase, puede usar algunos métodos de ciclo de vida como componenteDidMount, así que coloque su método de búsqueda dentro de un componenteDidMount no en el método de procesamiento porque cada vez que llame al método setState (), llamará al método de procesamiento nuevamente, y dentro de su método de procesamiento llamará a api y setState de nuevo, eso hace un bucle infinito, haz algo como esto:

 componentDidMount(){ const a = fetch("./logo.json").then(response => response.json()) .then((temp1)=> {this.setState({buttonLink:temp1.buttonLink,bannerImg:temp1.bannerImg}); }
about 4 years ago · Juan Pablo Isaza Denunciar

0

No puede llamar a buscar dentro de la función de render .

Puede usar un componente funcional para obtener fácilmente los datos.

 import React, { useEffect, useState } from 'react'; const Banner = () => { const [image, setImage] = useState({ buttonLink: '', bannerImg: '' }); useEffect(() => { fetch('./logo.json') .then((response) => response.json()) .then((temp1) => { setImage({ buttonLink: temp1.buttonLink, bannerImg: temp1.bannerImg }); }); }, []); return <img src={image.bannerImg}></img>; }; export default Banner;
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