ToggleGroupControl 是一个实验性的表单组件,用于让用户从水平分段选项中选择单一持久值,类似于单选按钮组。它适用于标签不会换行的场景,若标签较长可考虑使用 SelectControl 或 CustomSelectControl。
import {
__experimentalToggleGroupControl as ToggleGroupControl,
__experimentalToggleGroupControlOption as ToggleGroupControlOption,
} from '@wordpress/components';
function Example() {
return (
<ToggleGroupControl
label="my label"
value="vertical"
isBlock
__next40pxDefaultSize
>
<ToggleGroupControlOption value="horizontal" label="Horizontal" />
<ToggleGroupControlOption value="vertical" label="Vertical" />
</ToggleGroupControl>
);
}ToggleGroupControl is a form component that lets users choose options represented in horizontal segments. To render options for this control use ToggleGroupControlOption component.
This component is intended for selecting a single persistent value from a set of options, similar to a how a radio button group would work. If you simply want a toggle to switch between views, use a TabPanel instead.
Only use this control when you know for sure the labels of items inside won’t wrap. For items with longer labels, you can consider a SelectControl or a CustomSelectControl component instead.
import {
__experimentalToggleGroupControl as ToggleGroupControl,
__experimentalToggleGroupControlOption as ToggleGroupControlOption,
} from '@wordpress/components';
function Example() {
return (
<ToggleGroupControl
label="my label"
value="vertical"
isBlock
__next40pxDefaultSize
>
<ToggleGroupControlOption value="horizontal" label="Horizontal" />
<ToggleGroupControlOption value="vertical" label="Vertical" />
</ToggleGroupControl>
);
}
help: ReactNodeIf this property is added, a help text will be generated using help property as the content.
hideLabelFromVision: booleanIf true, the label will only be visible to screen readers.
falseisAdaptiveWidth: booleanDetermines if segments should be rendered with equal widths.
falseisDeselectable: booleanWhether an option can be deselected by clicking it again.
falseisBlock: booleanRenders ToggleGroupControl as a (CSS) block element, spanning the entire width of the available space. This is the recommended style when the options are text-based and not icons.
falselabel: stringLabel for the form element.
onChange: ( value?: string | number ) => voidCallback when a segment is selected.
() => {}value: string | numberThe value of the ToggleGroupControl.
__next40pxDefaultSize: booleanStart opting into the larger default height that will become the default size in a future version.
false