From 481402e09fe760634b826b09e302e2e1bfec88b1 Mon Sep 17 00:00:00 2001 From: shu Date: Mon, 7 Sep 2026 15:48:36 +0800 Subject: feat: initialize React Spectrum template with layouts and showcases --- src/components/form-examples/selection-fields.tsx | 68 +++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 src/components/form-examples/selection-fields.tsx (limited to 'src/components/form-examples/selection-fields.tsx') diff --git a/src/components/form-examples/selection-fields.tsx b/src/components/form-examples/selection-fields.tsx new file mode 100644 index 0000000..84e1ec1 --- /dev/null +++ b/src/components/form-examples/selection-fields.tsx @@ -0,0 +1,68 @@ +import FieldGrid from './field-grid' +import { useState } from 'react' +import { Checkbox, CheckboxGroup } from '@react-spectrum/s2/CheckboxGroup' +import { Radio, RadioGroup } from '@react-spectrum/s2/RadioGroup' +import { Switch } from '@react-spectrum/s2/Switch' +import { Picker, PickerItem } from '@react-spectrum/s2/Picker' +import { ComboBox, ComboBoxItem } from '@react-spectrum/s2/ComboBox' +import { SelectBox, SelectBoxGroup, Text, type Selection } from '@react-spectrum/s2/SelectBoxGroup' +import { SegmentedControl, SegmentedControlItem, type Key } from '@react-spectrum/s2/SegmentedControl' +import { ToggleButton, ToggleButtonGroup } from '@react-spectrum/s2/ToggleButtonGroup' +import styles from './form-examples.module.css' + +export default function SelectionFields({ disabled }: { disabled: boolean }) { + const [plan, setPlan] = useState(new Set(['personal'])) + const [view, setView] = useState('list') + const [format, setFormat] = useState(new Set()) + const [favorite, setFavorite] = useState(false) + const [partial, setPartial] = useState(true) + const [partialSelected, setPartialSelected] = useState(false) + return ( +
+

选择控件

+ + + 上海北京深圳 + + + {(item) => {item.name}} + + + 邮件电话 + + + 设计开发研究 + +
+ 订阅邮件 + { setPartial(false); setPartialSelected(value) }}>部分选中状态 + 开启通知 +
+
+ 分段选择 + + 列表网格 + + +
+
+ 切换按钮组 + + 粗体斜体 + + + 收藏 + +
+
+
+ 卡片选择 + + 个人版个人工作空间 + 团队版多人协作空间 + + +
+
+ ) +} -- cgit v1.2.3