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

257
Visualizações
Cómo cambiar el color y el nombre del botón en una celda específica en la tabla de interfaz de usuario del material

Estoy usando Material Table para mostrar mis datos. Aquí parece, https://i.postimg.cc/4x6hbm5N/image.png

He declarado un state arriba en mi código

 const [sharedOrdersList, setShareOrdersList] = useState([])

Cuando el User haga clic en el botón Share , enviaré el Order Id a sharedOrdersList . Funciona. Pero ahora mi problema era que quería cambiar el Nombre del botón a UnShare y el color del botón a otro color. Probé de varias maneras. pero no se como hacerlo

Aquí está mi código de función:

 const shareOrderBtnClick = (orderID) => { sharedOrdersList.push(orderID) alert("share Btn Clicked") console.log(sharedOrdersList) }

Código de retorno:

 allOrderDatas.map((row) => ( <TableRow> <TableCell"> <Button variant="contained" onClick={()=>{shareOrderBtnClick(row.orderID)}} style={{ backgroundColor:sharedOrdersList.includes(row.orderID)?"#59886B":"#D54062",}}> <ShareIcon />{sharedOrdersList.includes(row.orderID)?"UnShare":"Share"</Button> </TableCell> </TableRow>

No sé cómo cambiar el elemento específico en la celda de la fila de la tabla. Por favor, ayúdame con algunas soluciones.

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

0

Los estados en reaccionar son inmutables. useState devuelve un valor y una función de actualización. No puede cambiar directamente el valor. Para actualizar el estado, debe llamar a la función setShareOrdersList con el nuevo valor.

En tu ejemplo

 const shareOrderBtnClick = (orderID) => { setShareOrdersList([... sharedOrdersList, orderID]); // OR BETTER // setShareOrdersList(prevState => [...prevState, orderID]); }
about 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
Recomende algumas ofertas para mim
Preciso de ajuda