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

341
Visualizações
¿Cómo puedo cambiar el color del botón de radio en el diseño de la hormiga - reaccionar?

Estoy usando una biblioteca llamada Ant Design que usa un tema de color en toda la interfaz, pero el componente del botón de opción no tiene la propiedad de cambiarlo fácilmente, mi objetivo es cambiar el color del botón de opción al presionar el botón de la papelera.

de este -> botón de papelera no seleccionado a este botón de papelera seleccionado

el método que uso aquí es cambiar el css del componente con !important de la siguiente manera:

 .ant-radio-button-checked, .ant-radio-button-inner, .ant-radio-button-inner, .ant-radio-button-wrapper-checked, .ant-radio-button-input:focus, .ant-radio-button-inner { border-color: #ff4d4f !important; color: #ff4d4f !important; } .ant-radio:hover, .ant-radio-button-wrapper:hover { color: #ff4d4f; }

pero no puedo volver atrás esta acción

mi componente de reacción es el siguiente:

 import { React, useState } from 'react'; import { Radio, Button } from 'antd'; import ShopSketch from './ShopSketch'; const Example = () => { const [selectedShop, setSelectedShop] = useState(false); const [deleteShop, setDeleteShop] = useState(false); const [shopNames, setShopNames] = useState(['shop1', 'shop2', 'shop3']); return ( <div> <Button danger onClick={() => setDeleteShop(!deleteShop)}> <ion-icon style={{ color: 'red', fontSize: '18px' }} name={deleteShop ? 'close-outline' : 'trash-outline'} ></ion-icon> </Button> <Radio.Group className="shops" onChange={(e) => { const selected = e.target.value; setSelectedShop(selected); }} > {shopNames.map((name, index) => ( <ShopSketch name={name} key={index} deleteShop={deleteShop} /> ))} </Radio.Group> </div> ); }; export default Example;

y el componente shopSketch es:

 import { Radio } from 'antd'; import { React } from 'react'; const ShopSketch = ({ name, deleteShop }) => { return ( <Radio.Button value={name} style={{ height: '200px', borderWidth: '2.5px' }} > <p>{name}</p> <ion-icon name="wallet-outline" size="big"></ion-icon> </Radio.Button> ); }; export default ShopSketch;

Intenté cambiar el estilo directamente en el botón de radio pero afecta a todos los elementos, importo condicionalmente el css pero no puedo revertir la acción Me quedé sin ideas, sé que soy un poco nuevo pero realmente agradecería si me podrian dar algun tipo de ayuda gracias de antemano.

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

0

finalmente, pude encontrar una pequeña solución

En el ejemplo, agregue SelectedShop como argumento:

 <ShopSketch name={name} key={index} deleteShop={deleteShop} selectedShop={selectedShop} />

En ShopSketch, agregue la tienda seleccionada y el estilo a radio.button:

 const ShopSketch = ({ name, selectedShop, deleteShop }) => <Radio.Button value={name} className={`shop ${deleteShop ? 'shop-delete' : ''}`} style={ selectedShop === name && deleteShop ? { border: '2.5px solid #ff4d4f', color: '#ff4d4f', } : { borderWidth: '2.5px' } } >

en CSS:

 .shop-delete:hover { color: #ff4d4f; }
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