一组可以选择的按钮——称为单选按钮——在任何时候最多只能选择一个按钮。
import * as React from "react";import { RadioGroup } from "radix-ui";import "./styles.css";const RadioGroupDemo = () => (<form><RadioGroup.Root className="RadioGroupRoot" defaultValue="default" aria-label="View density" ><div style={{ display: "flex", alignItems: "center" }}><RadioGroup.Item className="RadioGroupItem" value="default" id="r1"><RadioGroup.Indicator className="RadioGroupIndicator" /></RadioGroup.Item><label className="Label" htmlFor="r1">Default</label></div><div style={{ display: "flex", alignItems: "center" }}><RadioGroup.Item className="RadioGroupItem" value="comfortable" id="r2"><RadioGroup.Indicator className="RadioGroupIndicator" /></RadioGroup.Item><label className="Label" htmlFor="r2">Comfortable</label></div><div style={{ display: "flex", alignItems: "center" }}><RadioGroup.Item className="RadioGroupItem" value="compact" id="r3"><RadioGroup.Indicator className="RadioGroupIndicator" /></RadioGroup.Item><label className="Label" htmlFor="r3">Compact</label></div></RadioGroup.Root></form>);export default RadioGroupDemo;
完整的键盘导航。
支持水平/垂直方向。
可以是受控或非受控模式。
从命令行安装组件。
导入所有部分并将它们组合在一起。
包含单选按钮组的所有部分。
组中的一个可被选中的项目。当在 form
中使用时,它将渲染一个 input
以确保事件正确传播。
当单选按钮项处于选中状态时渲染。您可以直接样式化该元素,也可以将其用作放置图标的包装器,或二者兼有。
遵循 单选按钮组 WAI-ARIA 设计模式 并使用 移动 tabindex 来管理单选按钮项之间的焦点移动。