## Form Props | 名称 | 类型 | 默认值 | 必传 | 说明 | | -------------- | ---------------------------------------------------------------------------------------- | --------- | ---- | ----------------------------------------- | | form | `FormItemProps[]` | - | Y | 表单配置项数组。 | | submitText | `string` | - | N | 提交按钮文字。 | | submitButton | [`ButtonProps`](https://stdf.design/components?nav=button&tab=1) | - | N | 提交按钮配置。 | | resetText | `string`\|`null` | `null` | N | 重置按钮文字,传入 null 时不显示。 | | resetButton | [`ButtonProps`](https://stdf.design/components?nav=button&tab=1) | - | N | 重置按钮配置。 | | submitChildren | `Snippet` | - | N | 自定义提交按钮内容。 | | resetChildren | `Snippet` | - | N | 自定义重置按钮内容。 | | space | `'0'\|'1'\|'2'\|'4'\|'6'\|'8'` | `'0'` | N | 表单项垂直间距。 | | card | `boolean` | `false` | N | 是否开启卡片布局。 | | mx | `'2'\|'3'\|'4'\|'6'\|'8'` | `'4'` | N | 水平外边距(card 模式时生效)。 | | px | `'0'\|'1'\|'2'\|'4'\|'6'` | `'2'` | N | 水平内边距(card 模式时生效)。 | | radius | `'sm'\|'md'\|'lg'\|'xl'\|'2xl'\|'3xl'\|'4xl'` | `'xl'` | N | 卡片圆角(card 模式时生效)。 | | shadow | `'none'\|'xs'\|'sm'\|'md'\|'lg'\|'xl'\|'2xl'` | `'sm'` | N | 卡片阴影(card 模式时生效)。 | | onchange | `(data: Record) => void` | - | N | 表单项值变化时触发。 | | onsubmit | `(data: Record) => void` | - | N | 提交时触发。 | | onreset | `() => void` | - | N | 重置时触发。 | ## Form Events | 名称 | 类型 | 参数 | 说明 | | ------- | ------------------------------------------------------------ | ------------------------------------------- | ---------------- | | onchange | `(data: Record) => void` | data - 所有表单项的当前值 | 表单项值变化时触发。 | | onsubmit | `(data: Record) => void` | data - 所有表单项的当前值 | 提交时触发。 | | onreset | `() => void` | - | 重置时触发。 | ## Form Snippets | 名称 | 类型 | 参数 | 说明 | | -------------- | ------------------------------------------------------------------- | ---- | ---------------------- | | submitChildren | [`Snippet`](https://svelte.dev/docs/svelte/snippet#Typing-snippets) | - | 自定义提交按钮内容。 | | resetChildren | [`Snippet`](https://svelte.dev/docs/svelte/snippet#Typing-snippets) | - | 自定义重置按钮内容。 | ## FormItemProps 表单项通用配置: | 名称 | 类型 | 说明 | | --------- | --------------------- | --------------------- | | type | `string` | 表单项类型。 | | name | `string` | 表单项名称。 | | label | `string` | 表单项标题。 | | required | `boolean` | 是否必填。 | | initValue | `any` | 初始值。 | 支持的表单项类型及配置: ### input 文本输入框。 | 名称 | 类型 | 说明 | | ------ | -------- | -------------- | | type | `'input'` | 类型标识。 | | input | `object` | Input 组件配置。| ### numKeyboard 数字键盘。 | 名称 | 类型 | 说明 | | ---------- | -------------- | -------------------- | | type | `'numKeyboard'` | 类型标识。 | | numKeyboard | `object` | NumKeyboard 组件配置。| | input | `object` | Input 组件配置。 | ### timePicker 时间选择器。 | 名称 | 类型 | 说明 | | ---------- | -------------- | -------------------- | | type | `'timePicker'` | 类型标识。 | | timePicker | `object` | TimePicker 组件配置。| | input | `object` | Input 组件配置。 | ### actionSheet 操作面板。 | 名称 | 类型 | 说明 | | ---------- | -------------- | -------------------- | | type | `'actionSheet'` | 类型标识。 | | actionSheet | `object` | ActionSheet 组件配置。| | input | `object` | Input 组件配置。 | ### calendar 日期选择器。 | 名称 | 类型 | 说明 | | -------- | ------------ | ---------------- | | type | `'calendar'` | 类型标识。 | | calendar | `object` | Calendar 组件配置。| | input | `object` | Input 组件配置。 | ### picker 选择器。 | 名称 | 类型 | 说明 | | ------ | -------- | -------------- | | type | `'picker'` | 类型标识。 | | picker | `object` | Picker 组件配置。| | input | `object` | Input 组件配置。| ### checkbox 复选框组。 | 名称 | 类型 | 说明 | | -------- | ------------ | ---------------- | | type | `'checkbox'` | 类型标识。 | | checkbox | `object` | Checkbox 组件配置。| ### radio 单选框组。 | 名称 | 类型 | 说明 | | ----- | ------- | ---------- | | type | `'radio'` | 类型标识。 | | radio | `object` | Radio 组件配置。| ### slider 滑块。 | 名称 | 类型 | 说明 | | ------ | -------- | -------------- | | type | `'slider'` | 类型标识。 | | slider | `object` | Slider 组件配置。| ### switch 开关。 | 名称 | 类型 | 说明 | | ------ | -------- | -------------- | | type | `'switch'` | 类型标识。 | | switch | `object` | Switch 组件配置。| ### stepper 步进器。 | 名称 | 类型 | 说明 | | -------- | ------------ | ---------------- | | type | `'stepper'` | 类型标识。 | | stepper | `object` | Stepper 组件配置。| ## FormValueProps 表单值类型为 `Record`,其中 FormValueProps 是所有表单项值的联合类型: | 表单项类型 | 值类型 | | ------------ | -------------------------------- | | input | `string` | | numKeyboard | `string` | | timePicker | `FormTimePickerValue` | | actionSheet | `FormActionSheetValue` | | calendar | `FormCalendarValue` | | picker | `FormPickerValue` | | checkbox | `string[]` | | radio | `string` | | slider | `FormSliderValue` | | switch | `boolean` | | stepper | `number` |