React Radio & Radio Group
O componente Rádio Ignite UI for React permite que o usuário selecione uma única opção de um conjunto disponível de opções listadas lado a lado.
Ignite UI for React Radio Example
Usage
Primeiro, você precisa instalar o pacote npm Ignite UI for React correspondente executando o seguinte comando:
npm install igniteui-react
Você precisará então importar o IgrRadio
e o IgrRadioGroup
, seu CSS necessário, e registrar seu módulo, assim:
import { IgrRadioModule, IgrRadio, IgrRadioGroupComponent, IgrRadioGroupModule } from 'igniteui-react';
import 'igniteui-webcomponents/themes/light/bootstrap.css';
IgrRadioModule.register();
IgrRadioGroupModule.register();
<IgrRadioGroup>
<IgrRadio value="apple"><span>Apple</span></IgrRadio>
<IgrRadio value="banana"><span>Banana</span></IgrRadio>
<IgrRadio value="Mango"><span>Mango</span></IgrRadio>
<IgrRadio value="orange"><span>Orange</span></IgrRadio>
</IgrRadioGroup>
[!WARNING] The
IgrRadio
component doesn't work with the standard<form>
element. UseForm
instead.
Examples
Label
Para fornecer um rótulo significativo para o IgrRadio
, basta colocar algum texto entre as tags de abertura e fechamento:
<IgrRadio><span>Label</span></IgrRadio>
Você pode especificar se o rótulo deve ser posicionado antes ou depois do IgrRadio
botão definindo o label-position
atributo. Os valores permitidos são before
and after
(default):
<IgrRadio labelPosition="before"><span>Apple</span></IgrRadio>
Eles IgrRadio
também podem ser rotulados por elementos externos a ele. Nesse caso, o usuário tem controle total para posicionar e estilizar a etiqueta de acordo com suas necessidades.
<span id="radio-label">Label</span>
<IgrRadio ariaLabelledby="radio-label"></IgrRadio>
Checked
Você pode usar o atributo checked
para ligar o rádio.
<IgrRadioGroup>
<IgrRadio value="apple"><span>Apple</span></IgrRadio>
<IgrRadio value="banana" checked="true"><span>Banana</span></IgrRadio>
<IgrRadio value="Mango"><span>Mango</span></IgrRadio>
<IgrRadio value="orange"><span>Orange</span></IgrRadio>
</IgrRadioGroup>
Invalid
Você pode usar o atributo invalid
para marcar o rádio como inválido.
<IgrRadio invalid="true"></IgrRadio>
Disabled
Você pode usar o atributo disabled
para desabilitar o rádio.
<IgrRadioGroup>
<IgrRadio value="apple"><span>Apple</span></IgrRadio>
<IgrRadio value="banana" disabled="true"><span>Banana</span></IgrRadio>
<IgrRadio value="Mango"><span>Mango</span></IgrRadio>
<IgrRadio value="orange"><span>Orange</span></IgrRadio>
</IgrRadioGroup>
Group Alignment
O IgrRadioGroup
permite que você altere facilmente a direcionalidade de posicionamento dos botões de opção que ele contém usando o alignment
atributo. Os valores permitidos são vertical
(padrão) e horizontal
.
<IgrRadioGroup alignment="horizontal">
<IgrRadio value="apple"><span>Apple</span></IgrRadio>
<IgrRadio value="banana" disabled="true"><span>Banana</span></IgrRadio>
<IgrRadio value="Mango"><span>Mango</span></IgrRadio>
<IgrRadio value="orange"><span>Orange</span></IgrRadio>
</IgrRadioGroup>
Forms
Você pode usar os atributos name
e value
ao usar o rádio com Form
.
<IgrRadioGroup>
<IgrRadio name="fruit" value="apple"><span>Apple</span></IgrRadio>
<IgrRadio name="fruit" value="banana"><span>Banana</span></IgrRadio>
<IgrRadio name="fruit" value="Mango"><span>Mango</span></IgrRadio>
<IgrRadio name="fruit" value="orange"><span>Orange</span></IgrRadio>
</IgrRadioGroup>
Styling
O IgrRadio
componente expõe várias partes CSS (base
, control
, e label
) para dar a você controle total sobre seu estilo.
igc-radio::part(control) {
--size: 18px;
}
igc-radio-group {
padding: 12px;
}
igc-radio::part(checked)::after {
background-color: var(--ig-success-500);
}
igc-radio::part(label) {
color: var(--ig-secondary-800);
}