一组可勾选的按钮(称为单选按钮),其中一次只能勾选一个按钮。
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
,以确保事件正确传播。
当单选按钮项处于选中状态时渲染。您可以直接设置此元素的样式,也可以将其用作包装器来放入图标,或两者都用。
遵循 Radio Group WAI-ARIA 设计模式 并使用 roving tabindex 来管理单选按钮项之间的焦点移动。