UI

Radio Group

Lista de opções sempre visíveis em que o usuário escolhe exatamente uma.

Forma de contato preferida

Instalação

npx shadcn@latest add @lenstech/radio-group

Uso

import { Radio, RadioGroup } from "@/components/ui/radio-group"
<RadioGroup name="contato" label="Forma de contato" defaultValue="whatsapp">
  <Radio value="whatsapp">WhatsApp</Radio>
  <Radio value="email">E-mail</Radio>
</RadioGroup>

O valor fica no grupo

O RadioGroup guarda a escolha: use defaultValue ou value + onChange no grupo (e não em cada Radio). onChange recebe a string do value escolhido. As setas do teclado movem a seleção entre as opções.

Exemplos

Horizontal

Período da consulta

Com descrição e opção desabilitada

Entrega
Pronto em 30 minutos no balcão.
Até 5 km, em cerca de 1 hora.
De 3 a 7 dias úteis.

Cartões

variant="card" transforma cada opção em um cartão clicável. Use addon para preço ou destaque à direita.

Plano de hospedagemTodos incluem SSL e backup diário.
Site de até 5 páginas e 1 e-mail.
Blog, 10 e-mails e relatório de acessos.
Loja virtual com até 500 produtos.

Obrigatório

Tente finalizar sem escolher uma opção.

Forma de pagamento

Controlado

Cobrança

Valor: R$ 99/mês

Quando usar

  • Use para 2 a 6 opções mutuamente exclusivas que o usuário deve comparar (planos, entrega, pagamento).
  • Não use com muitas opções — use Select ou Combobox.
  • Não use para escolher várias opções — use Checkbox (CheckboxGroup).
  • Para ligar/desligar uma única configuração, use Switch.

API

RadioGroup

Aceita todas as props do RadioGroup do React Aria, mais:

Prop

Type

Radio

Aceita todas as props do Radio do React Aria, mais:

Prop

Type

Composição

RadioField, RadioButton e RadioIndicator são as peças usadas pelo Radio, para layouts próprios.

On this page