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

120
Visualizações
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 à 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
Recomende algumas ofertas para mim
Preciso de ajuda