Radio
Одиночный <input type="radio">. Сам по себе нужен редко: радиокнопки взаимоисключающи только при общем name, и стрелки ходят внутри этой группы — берите RadioGroup, если только не раскладываете группу вручную.
Код
<div class="aura-stack" style="--aura-dir:column;--aura-gap:var(--space-3)">
<label class="aura-check">
<input type="radio" class="aura-radio" name="density-solo" value="comfortable" checked />
<span>Comfortable</span>
</label>
<label class="aura-check">
<input type="radio" class="aura-radio" name="density-solo" value="compact" />
<span>Compact</span>
</label>
</div>import { Radio, Stack } from '@ilomee/aura-react';
export default function Demo() {
// Одиночная радиокнопка — в этом и смысл примера: сама по себе она взаимоисключающа только с
// теми, у кого тот же `name`. Берите RadioGroup, если только не раскладываете группу вручную: он
// передаёт name вниз и даёт fieldset с legend.
return (
<Stack gap={3}>
<Radio label="Comfortable" name="density-solo" value="comfortable" defaultChecked />
<Radio label="Compact" name="density-solo" value="compact" />
</Stack>
);
}Настоящий нативный input под кастомной отрисовкой: он уходит с формой, связан со своей подписью и уже несёт поведение с клавиатуры и для скринридера. (Switch — сознательное исключение: это <button role="switch">, поэтому он не участвует в отправке формы.)
<script setup lang="ts">
import { Radio } from '@ilomee/aura-vue';
</script>
<template>
<Radio label="Compact" name="density" value="compact" />
</template>Всё остальное (name, value, checked, disabled) проваливается на input.
<script lang="ts">
import { Radio } from '@ilomee/aura-svelte';
</script>
<Radio label="Compact" name="density" value="compact" />Всё остальное (name, value, checked, disabled) проваливается на input.
Используется как aura-radio.
import { AuraRadio } from '@ilomee/aura-angular';
@Component({
standalone: true,
imports: [AuraRadio],
template: `<aura-radio label="Compact" name="density" value="compact" />`,
})
export class DemoComponent {}Пропсы
| Имя | Тип | По умолчанию | Примечания |
|---|---|---|---|
| label | string | — | |
| name | string | — | Именно он делает группу группой. |
| value | string | — | |
| checked | boolean | — | |
| disabled | boolean | — |
| Имя | Тип | По умолчанию | Примечания |
|---|---|---|---|
| label | string | — |
| Имя | Тип | По умолчанию | Примечания |
|---|---|---|---|
| label | string | — |
| Имя | Тип | По умолчанию | Примечания |
|---|---|---|---|
| label | string | — | |
| name | string | — | |
| value | string | — | |
| checked | boolean | false | |
| disabled | boolean | false |
Какие классы отдаёт
Все фреймворки отдают одни и те же классы — именно поэтому четыре библиотеки выглядят одинаково. Их можно использовать напрямую, вообще без библиотеки компонентов.
| Класс | Роль | Примечания |
|---|---|---|
| .aura-radio | база | Обязательный. Без него модификатор не работает. |
| .aura-check | база | Обязательный. Без него модификатор не работает. |
Токены и правила
components.css- точка
- var(--radio-size) · 999px
- выбран
- var(--accent)