Tengo estas imágenes en iteración, y solo en caso de error de imagen, tengo que agregar un color de fondo al div del elemento principal. Así que mi código es así
import React, { useState, useEffect } from 'react' import COLORS from 'core/colors/colors' ... export const ComponentSample: React.FC = () => { const [imagePlaceholder, setImagePlaceholder] = useState(false) const addDefaultSrc = (ev) => { if (!ev.currentTarget.onerror) { setImagePlaceholder(true) } ev.target.src = 'https://socialistmodernism.com/wp-content/uploads/2017/07/placeholder-image.png?w=640' ev.currentTarget.className = styles.placeholderImg; } console.log(imagePlaceholder) const colors = Object.values(COLORS) const randomColor = imagePlaceholder ? colors[Math.floor(Math.random() * colors.length)] : COLORS.white return <div className={styles.container}> <div className={styles.imageContainer} key={index} style={{ backgroundColor: randomColor }} > <img src={project.thumbnailUrl} onError={addDefaultSrc} className={styles.imagePost} /> </div> }El problema aquí es que imagePlaceholder se vuelve verdadero y siempre vuelve verdadero, no sé cómo hacerlo solo en la imagen que tiene un error