Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

187
Visualizações
¿Cómo verificar si la imagen no es válida en reaccionar?

Estoy tratando de crear una especie de galería de medios para la aplicación React, pero el problema es que a veces el usuario puede cargar algunas imágenes dañadas y necesito verificar de alguna manera si es posible leer la imagen y no dañarla antes de mostrarla. Sé que en la etiqueta <image/> hay una propiedad onerror en la que muestra otra imagen si la primera no funcionó.

 <img src={url} style={style} onError={this.hideImg}/>

Pero el problema es que uso un div con fondo de imagen, por lo que no funcionará para mí, y además, también necesito mostrar un mensaje de notificación de que el archivo está dañado. ¿Alguien sabe si hay algunas formas de verificar si el archivo es válido antes de mostrarlo en reaccionar?

over 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Puede crear una imagen en la memoria (es decir, no en la página) y esperar a que se cargue o se produzca un error. Por ejemplo:

 const Example = ({ url }) => { const [status, setStatus] = useState('loading'); useEffect(() => { const img = new Image(); img.onload = () => { setStatus('success'); } img.onerror = () => { setStatus('error'); } img.src = url return () => { img.onload = null; img.onerror = null; } }, []) if (status === 'loading') { return null; } else if (status === 'error') { return <div>Error loading image</div> } else { return <div style={{ backgroundImage: `url(${url})`}} /> } }
over 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Assistente virtual