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

125
Vistas
el cambio en un elemento vuelve a ejecutar todo el bucle del componente del mapa en ReacJS

Estoy enviando una acción de comentario adicional en una publicación específica que vuelve a ejecutar el bucle del componente en lugar de actualizar uno específico. Supongamos que si tengo 100 publicaciones agregando comentarios a una publicación, se ejecuta el ciclo de componentes nuevamente y se itera nuevamente 100 veces. ¿Hay alguna forma de volver a renderizar solo un elemento específico en lugar de ejecutar todo el ciclo del componente nuevamente?

Aquí está mi código del componente en bucle

 const Post = ({totalComments, like, _id, image, caption}) => { const {enqueueSnackbar} = useSnackbar(); const dispatch = useDispatch(); const { user } = useSelector((state) => state.loadUser); const { loading: loadingComments, comments } = useSelector((state) => state.listComments); const { success: addCommentSucess, error: addCommentError } = useSelector((state) => state.addComment); const [openComment, setOpenComment] = useState(''); const [commentsLength, setCommentsLength] = useState(totalComments); //listing of comments useEffect(() => { if (addCommentError) { enqueueSnackbar(addCommentError, {variant: 'error'}); dispatch(clearErrors()); } }, [addCommentError, addCommentSucess, dispatch, enqueueSnackbar]); const openCommentHandler = () => { dispatch(listComments(_id)); setOpenComment(!openComment); } const addCommentHandler = (data) => { console.log('addcomehandle') dispatch(addComment(data)); setCommentsLength(commentsLength+1); } return ( <Card className='post-container'> <div className='button-wrapper'> <IconButton onClick={openCommentHandler} color={openComment ? 'primary' : 'default'}> <SvgIcon component={CommentOutlinedIcon} /> </IconButton> <p>{commentsLength}</p> </div> {!loadingComments && openComment && ( <Comments comments={comments} /> )} <Divider /> <AddComment onAddComment={addCommentHandler} postId={_id} /> </Card> ); }; export default Post;
about 4 years ago · Juan Pablo Isaza
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