From ace2a1ed57c2f6a3a3f5bd41a20e393d90866d60 Mon Sep 17 00:00:00 2001 From: danranVm Date: Wed, 8 Mar 2023 09:36:48 +0800 Subject: [PATCH] fix(comp:*): the control type of all form components is incomplete (#1495) --- packages/components/cascader/docs/Api.zh.md | 2 +- packages/components/cascader/src/types.ts | 5 ++++- packages/components/checkbox/docs/Api.zh.md | 4 ++-- packages/components/checkbox/src/types.ts | 10 ++++++++-- packages/components/date-picker/docs/Api.zh.md | 2 +- packages/components/date-picker/src/types.ts | 5 ++++- packages/components/form/docs/Api.zh.md | 6 +++--- packages/components/form/src/types.ts | 15 ++++++++++++--- packages/components/input-number/docs/Api.zh.md | 2 +- packages/components/input-number/src/types.ts | 5 ++++- packages/components/input/docs/Api.zh.md | 2 +- packages/components/input/src/types.ts | 8 ++++---- packages/components/radio/docs/Api.zh.md | 4 ++-- packages/components/radio/src/types.ts | 10 ++++++++-- packages/components/rate/docs/Api.zh.md | 2 +- packages/components/rate/src/types.ts | 5 ++++- packages/components/select/docs/Api.zh.md | 2 +- packages/components/select/src/types.ts | 5 ++++- packages/components/slider/docs/Api.zh.md | 2 +- packages/components/slider/src/types.ts | 5 ++++- packages/components/switch/docs/Api.zh.md | 2 +- packages/components/switch/src/types.ts | 6 +++++- packages/components/textarea/docs/Api.zh.md | 2 +- packages/components/time-picker/src/types.ts | 5 ++++- packages/components/tree-select/docs/Api.zh.md | 2 +- packages/components/tree-select/src/types.ts | 5 ++++- packages/pro/textarea/docs/Api.zh.md | 2 +- 27 files changed, 87 insertions(+), 38 deletions(-) diff --git a/packages/components/cascader/docs/Api.zh.md b/packages/components/cascader/docs/Api.zh.md index 516206afb..a9981cedd 100644 --- a/packages/components/cascader/docs/Api.zh.md +++ b/packages/components/cascader/docs/Api.zh.md @@ -5,7 +5,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `v-model:value` | 当前选中的的值 | `any \| any[] \| any[][]` | - | - | 使用 `control` 时,此配置无效 | | `v-model:expandedKeys` | 展开节点的 `key` 数组 | `VKey[]` | - | - | - | | `v-model:loadedKeys` | 已经加载完毕的节点的 `key` | `VKey[]` | - | - | - | diff --git a/packages/components/cascader/src/types.ts b/packages/components/cascader/src/types.ts index 0cc9647e9..38e32a35e 100644 --- a/packages/components/cascader/src/types.ts +++ b/packages/components/cascader/src/types.ts @@ -61,7 +61,10 @@ export const cascaderPanelProps = { } as const export const cascaderProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, value: { type: null, default: undefined }, expandedKeys: { type: Array as PropType, default: undefined }, loadedKeys: { type: Array as PropType, default: undefined }, diff --git a/packages/components/checkbox/docs/Api.zh.md b/packages/components/checkbox/docs/Api.zh.md index f63a28d75..1de0fd767 100644 --- a/packages/components/checkbox/docs/Api.zh.md +++ b/packages/components/checkbox/docs/Api.zh.md @@ -7,7 +7,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `v-model:checked` | 指定当前勾选框是否选中 | `boolean \| string \| number` | - | - | 使用 `control` 时,此配置无效 | | `autofocus` | 是否以自动聚焦 | `boolean` | `false` | - | - |. | `buttoned` | 是否以按钮显示 | `boolean` | - | - | - | @@ -36,7 +36,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `v-model:value` | 指定当前勾选框是否选中 | `any[]` | - | - | 使用 `control` 时,此配置无效 | | `buttoned` | 设置组内 `IxCheckbox` 的 `buttoned` 属性 | `boolean` | `false` | - | - | | `dataSource` | 勾选框组数据源 | `CheckboxData[]` | - | - | 优先级高于 `default` 插槽 | diff --git a/packages/components/checkbox/src/types.ts b/packages/components/checkbox/src/types.ts index a5693d9bc..719687a78 100644 --- a/packages/components/checkbox/src/types.ts +++ b/packages/components/checkbox/src/types.ts @@ -14,7 +14,10 @@ import type { SpaceProps } from '@idux/components/space' import type { DefineComponent, HTMLAttributes, LabelHTMLAttributes, PropType } from 'vue' export const checkboxProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, checked: { type: [String, Number, Boolean] as PropType, default: undefined }, autofocus: { type: Boolean, default: false }, @@ -50,7 +53,10 @@ export type CheckboxComponent = DefineComponent< export type CheckboxInstance = InstanceType> export const checkboxGroupProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, value: { type: Array, default: undefined }, buttoned: { type: Boolean, default: false }, diff --git a/packages/components/date-picker/docs/Api.zh.md b/packages/components/date-picker/docs/Api.zh.md index e864021cb..8e4436de5 100644 --- a/packages/components/date-picker/docs/Api.zh.md +++ b/packages/components/date-picker/docs/Api.zh.md @@ -6,7 +6,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | | `v-model:open` | 日期面板是否展开 | `boolean` | - | - | - | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `cellTooltip` | 日期节点的tooltip | `(cell: { value: Date, disabled: boolean }) => string | void` | - | - | - | | `allowInput` | 允许输入模式 | `boolean \| 'overlay'` | `false` | - | `'overlay'` 时在浮层内输入 | | `autofocus` | 默认获取焦点 | `boolean` | `false` | - | - | diff --git a/packages/components/date-picker/src/types.ts b/packages/components/date-picker/src/types.ts index 0d716d549..877a8beb5 100644 --- a/packages/components/date-picker/src/types.ts +++ b/packages/components/date-picker/src/types.ts @@ -34,7 +34,10 @@ export interface TimePanelOptions extends PickerTimePanelOptions { } const datePickerCommonProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, cellTooltip: Function as PropType<(cell: { value: Date; disabled: boolean }) => string | void>, open: { type: Boolean, diff --git a/packages/components/form/docs/Api.zh.md b/packages/components/form/docs/Api.zh.md index 0343a3f37..b3b49d2a9 100644 --- a/packages/components/form/docs/Api.zh.md +++ b/packages/components/form/docs/Api.zh.md @@ -6,7 +6,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | | `colonless` | 配置 `IxFormItem` 的 `colonless` 默认值 | `boolean` | `false` | ✅ | `seer` 主题默认为 `true` | -| `control` | 表单的控制器 | `string \| number \| AbstractControl` | - | - | 通常是配合 `useFormGroup` 使用 | +| `control` | 表单的控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 通常是配合 `useFormGroup` 使用 | | `controlCol` | 配置 `IxFormItem` 的 `controlCol` 默认值 | `number \| ColProps` | - | - | - | | `controlTooltipIcon` | 配置表单控件的提示信息icon | `string` | `'info-circle'` | ✅ | - | | `labelAlign` | 配置 `IxFormItem` 的 `labelAlign` 默认值 | `'start' \| 'end'` | `'end'` | ✅ | `seer` 主题默认为 `'start'` | @@ -28,7 +28,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | | `colonless` | 是否不显示 `label` 后面的冒号 | `boolean` | - | - | - | -| `control` | 表单控件的控制器 | `string \| number \| AbstractControl` | - | - | 默认取第 1 个子输入控件的 control,如果存在多个输入控件,建议手动指定,参考示例中的 `Phone Number`| +| `control` | 表单控件的控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 默认取第 1 个子输入控件的 control,如果存在多个输入控件,建议手动指定,参考示例中的 `Phone Number`| | `controlCol` | 配置表单控件的布局配置,可参考 `IxCol` 组件 | `number \| ColProps` | - | - | 传入 `string` 或者 `number` 时,为 `IxCol` 的 `span` 配置 | | `controlTooltip` | 配置表单控件的提示信息 | `string \| #controlTooltip` | - | - | 通常用于对输入规则的详细说明 | | `controlTooltipIcon` | 配置表单控件的提示信息icon | `string` | - | - | - | @@ -52,7 +52,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | -| `control` | 表单控件的控制器 | `string \| number \| AbstractControl` | - | - | - | +| `control` | 表单控件的控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | - | ### useFormItemRegister diff --git a/packages/components/form/src/types.ts b/packages/components/form/src/types.ts index 60b3234e2..08a3e7015 100644 --- a/packages/components/form/src/types.ts +++ b/packages/components/form/src/types.ts @@ -14,7 +14,10 @@ import type { DefineComponent, HTMLAttributes, PropType } from 'vue' const colProp = [Number, String, Object] as PropType export const formProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, colonless: { type: Boolean, default: undefined }, controlCol: colProp, controlTooltipIcon: String, @@ -35,7 +38,10 @@ export type FormInstance = InstanceType> export const formItemProps = { colonless: { type: Boolean, default: undefined }, - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, controlCol: colProp, controlTooltip: String, controlTooltipIcon: String, @@ -62,7 +68,10 @@ export type FormItemComponent = DefineComponent< export type FormItemInstance = InstanceType> export const formWrapperProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, } as const export type FormWrapperProps = ExtractInnerPropTypes diff --git a/packages/components/input-number/docs/Api.zh.md b/packages/components/input-number/docs/Api.zh.md index 48f74d7f6..6b68a81d7 100644 --- a/packages/components/input-number/docs/Api.zh.md +++ b/packages/components/input-number/docs/Api.zh.md @@ -8,7 +8,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | | `v-model:value` | 控件值 | `number` | - | - | 使用 `control` 时,此配置无效 | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `addonAfter` | 设置后缀 | `string \| #addonAfter` | - | - | - | | `addonBefore` | 设置前缀 | `string \| #addonBefore` | - | - | - | | `disabled` | 禁用 | `boolean` | `false` | - | 使用 `control` 时,此配置无效 | diff --git a/packages/components/input-number/src/types.ts b/packages/components/input-number/src/types.ts index 23b2697c5..d0f57d2bc 100644 --- a/packages/components/input-number/src/types.ts +++ b/packages/components/input-number/src/types.ts @@ -14,7 +14,10 @@ export type InputNumberButtonPosition = 'inner' | 'outer' export const inputNumberProps = { value: [Number, null] as PropType, - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, disabled: { type: Boolean, default: false, diff --git a/packages/components/input/docs/Api.zh.md b/packages/components/input/docs/Api.zh.md index 6755edd4a..0937b957d 100644 --- a/packages/components/input/docs/Api.zh.md +++ b/packages/components/input/docs/Api.zh.md @@ -8,7 +8,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | | `v-model:value` | 控件值 | `string` | - | - | 使用 `control` 时,此配置无效 | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `addonAfter` | 设置后置标签 | `string \| #addonAfter` | - | - | - | | `addonBefore` | 设置前置标签 | `string \| #addonBefore` | - | - | - | | `borderless` | 是否显示边框 | `boolean` | `false` | ✅ | - | diff --git a/packages/components/input/src/types.ts b/packages/components/input/src/types.ts index 829209da7..ca0463ffb 100644 --- a/packages/components/input/src/types.ts +++ b/packages/components/input/src/types.ts @@ -10,11 +10,11 @@ import type { ExtractInnerPropTypes, ExtractPublicPropTypes, MaybeArray } from ' import type { FormSize } from '@idux/components/form' import type { DefineComponent, InputHTMLAttributes, PropType } from 'vue' -export type TextareaResize = 'none' | 'both' | 'horizontal' | 'vertical' -export type TextareaAutoRows = { minRows: number; maxRows: number } - export const inputCommonProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, value: { type: String, default: undefined }, clearable: { type: Boolean, default: undefined }, diff --git a/packages/components/radio/docs/Api.zh.md b/packages/components/radio/docs/Api.zh.md index 4dcd7351b..7a441bca0 100644 --- a/packages/components/radio/docs/Api.zh.md +++ b/packages/components/radio/docs/Api.zh.md @@ -5,7 +5,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `v-model:checked` | 是否选中 | `boolean` | - | - | 使用 `control` 时,此配置无效 | | `autofocus` | 是否以自动聚焦 | `boolean` | `false` | - | - | | `buttoned` | 是否以按钮显示 | `boolean` | `false` | - | - | @@ -34,7 +34,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `v-model:value` | 当前选中的值 | `any` | - | - | 使用 `control` 时,此配置无效 | | `buttoned` | 设置单选框组内 `IxRadio` 的 `buttoned` | `boolean` | - | - | - | | `dataSource` | 以配置形式设置子元素 | `RadioData[]`| - | 优先级高于 `default` 插槽 | | diff --git a/packages/components/radio/src/types.ts b/packages/components/radio/src/types.ts index 8df8b816b..e1c787a73 100644 --- a/packages/components/radio/src/types.ts +++ b/packages/components/radio/src/types.ts @@ -14,7 +14,10 @@ import type { SpaceProps } from '@idux/components/space' import type { DefineComponent, HTMLAttributes, LabelHTMLAttributes, PropType } from 'vue' export const radioProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, checked: { type: Boolean, default: undefined }, autofocus: { type: Boolean, default: false }, @@ -46,7 +49,10 @@ export type RadioComponent = DefineComponent< export type RadioInstance = InstanceType> export const radioGroupProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, value: { type: null, default: undefined }, buttoned: { type: Boolean, default: false }, diff --git a/packages/components/rate/docs/Api.zh.md b/packages/components/rate/docs/Api.zh.md index 323a75749..a87e7d7d9 100644 --- a/packages/components/rate/docs/Api.zh.md +++ b/packages/components/rate/docs/Api.zh.md @@ -6,7 +6,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | | `v-model:value` | 高亮的数目(分数) | `number` | - | - | 使用 `control` 时,此配置无效 | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `allowHalf` | 支持半分(选) | `boolean` | `false` | ✅ | - | | `clearable` | 二次点击元素后清除选择 | `boolean` | `false` | ✅ |-| | `count` | 图标数目 | `number` | `5` | ✅ | - | diff --git a/packages/components/rate/src/types.ts b/packages/components/rate/src/types.ts index 96767ebd6..435acd9ff 100644 --- a/packages/components/rate/src/types.ts +++ b/packages/components/rate/src/types.ts @@ -11,7 +11,10 @@ import type { FormSize } from '@idux/components/form' import type { DefineComponent, HTMLAttributes, PropType } from 'vue' export const rateProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, value: [Number, String] as PropType, allowHalf: { diff --git a/packages/components/select/docs/Api.zh.md b/packages/components/select/docs/Api.zh.md index 9d3898671..517dcb7c1 100644 --- a/packages/components/select/docs/Api.zh.md +++ b/packages/components/select/docs/Api.zh.md @@ -5,7 +5,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `v-model:value` | 当前选中的 option 的值 | `any \| any[]` | - | - | 当 `multiple=true` 时,`value` 为数组,使用 `control` 时,此配置无效 | | `v-model:open` | 下拉菜单是否展开 | `boolean` | - | - | - | | `allowInput` | 允许输入模式 | `boolean` | `false` | - | - | diff --git a/packages/components/select/src/types.ts b/packages/components/select/src/types.ts index 692374fb0..7674e5b4a 100644 --- a/packages/components/select/src/types.ts +++ b/packages/components/select/src/types.ts @@ -45,7 +45,10 @@ export const selectPanelProps = { } as const export const selectProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, value: { type: [String, Number, Symbol, Array] as PropType>, default: undefined }, open: { type: Boolean, default: undefined }, diff --git a/packages/components/slider/docs/Api.zh.md b/packages/components/slider/docs/Api.zh.md index de8fdc730..dcd940684 100644 --- a/packages/components/slider/docs/Api.zh.md +++ b/packages/components/slider/docs/Api.zh.md @@ -6,7 +6,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | | `v-model:value` | 绑定值 | `number \| [number, number]` | `0 \| [0, 0]` | - | 使用 `control` 时,此配置无效 | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `disabled` | 设置禁用状态 | `boolean` | `false` | - | 使用 `control` 时,此配置无效 | | `dots` | 显示间断点 | `boolean` | `false` | - | `marks` 间断点会始终显示 | |`marks`|刻度标记,`key` 的类型必须为 `number` 且取值在闭区间 `[min, max]` 内,每个标签可以单独设置样式|`object`|-|-|`{ number: string \| VNode } or { number: { style: object, label: string \| VNode } } or { number: () => VNode }` | diff --git a/packages/components/slider/src/types.ts b/packages/components/slider/src/types.ts index cc01e1cee..447c6e853 100644 --- a/packages/components/slider/src/types.ts +++ b/packages/components/slider/src/types.ts @@ -13,7 +13,10 @@ import type { CSSProperties, DefineComponent, HTMLAttributes, PropType, VNode } // slider export const sliderProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, value: { type: [Number, Array] as PropType, default: undefined }, disabled: { type: Boolean, default: false }, diff --git a/packages/components/switch/docs/Api.zh.md b/packages/components/switch/docs/Api.zh.md index 02839efd8..888c7e1b7 100644 --- a/packages/components/switch/docs/Api.zh.md +++ b/packages/components/switch/docs/Api.zh.md @@ -5,7 +5,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `v-model:checked` | 是否开启 | `boolean` | `false` | - | 使用 `control` 时,此配置无效 | | `autofocus` | 自动获取焦点 | `boolean` | `false` | - | - | | `disabled` | 是否禁止操作 | `boolean` | `false`| - | 使用 `control` 时,此配置无效 | diff --git a/packages/components/switch/src/types.ts b/packages/components/switch/src/types.ts index f59f69d76..db10f6d22 100644 --- a/packages/components/switch/src/types.ts +++ b/packages/components/switch/src/types.ts @@ -10,8 +10,12 @@ import type { ExtractInnerPropTypes, ExtractPublicPropTypes, MaybeArray } from ' import type { DefineComponent, HTMLAttributes, PropType } from 'vue' export const switchProps = { + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, checked: { type: Boolean, default: undefined }, - control: [String, Number, Object] as PropType, + autofocus: { type: Boolean, default: false }, disabled: { type: Boolean, default: false }, labels: { type: Array as PropType, default: () => [] }, diff --git a/packages/components/textarea/docs/Api.zh.md b/packages/components/textarea/docs/Api.zh.md index 9d874c3c3..f23ac8479 100644 --- a/packages/components/textarea/docs/Api.zh.md +++ b/packages/components/textarea/docs/Api.zh.md @@ -8,7 +8,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | | `v-model:value` | 控件值 | `string` | - | - | 使用 `control` 时,此配置无效 | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `autoRows` | 是否显示自适应 `rows` | `boolean \| { minRows?: number, maxRows?: number }` | `false` | ✅ | - | | `clearable` | 是否显示清除图标 | `boolean` | `false` | ✅ | - | | `clearIcon` | 设置清除图标 | `string \| #clearIcon` | `'close-circle'` | ✅ | - | diff --git a/packages/components/time-picker/src/types.ts b/packages/components/time-picker/src/types.ts index 054212e38..ee961b1e4 100644 --- a/packages/components/time-picker/src/types.ts +++ b/packages/components/time-picker/src/types.ts @@ -21,7 +21,10 @@ const timePickerCommonProps = { type: Boolean, default: undefined, }, - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, allowInput: { type: [Boolean, String] as PropType, default: undefined, diff --git a/packages/components/tree-select/docs/Api.zh.md b/packages/components/tree-select/docs/Api.zh.md index e6cbe6c51..e09d57b8b 100644 --- a/packages/components/tree-select/docs/Api.zh.md +++ b/packages/components/tree-select/docs/Api.zh.md @@ -5,7 +5,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `v-model:value` | 选中节点的 `key` 数组 | `VKey[]` | - | - | 使用 `control` 时,此配置无效 | | `v-model:expandedKeys` | 展开节点的 `key` 数组 | `VKey[]` | - | - | - | | `v-model:loadedKeys` | 已经加载完毕的节点的 `key` 数组 | `VKey[]` | - | - | - | diff --git a/packages/components/tree-select/src/types.ts b/packages/components/tree-select/src/types.ts index 4cce1c804..87ad110e4 100644 --- a/packages/components/tree-select/src/types.ts +++ b/packages/components/tree-select/src/types.ts @@ -18,7 +18,10 @@ import type { OverlayContainerType } from '@idux/components/utils' import type { DefineComponent, HTMLAttributes, PropType, VNode, VNodeChild } from 'vue' export const treeSelectProps = { - control: { type: [String, Number, Object] as PropType, default: undefined }, + control: { + type: [String, Number, Object, Array] as PropType, + default: undefined, + }, value: { type: null, default: undefined }, open: { type: Boolean, default: undefined }, expandedKeys: { type: Array as PropType, default: undefined }, diff --git a/packages/pro/textarea/docs/Api.zh.md b/packages/pro/textarea/docs/Api.zh.md index d36597758..d71b96ca2 100644 --- a/packages/pro/textarea/docs/Api.zh.md +++ b/packages/pro/textarea/docs/Api.zh.md @@ -6,7 +6,7 @@ | 名称 | 说明 | 类型 | 默认值 | 全局配置 | 备注 | | --- | --- | --- | --- | --- | --- | | `v-model:value` | 控件值 | `string` | - | - | 使用 `control` 时,此配置无效 | -| `control` | 控件控制器 | `string \| number \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | +| `control` | 控件控制器 | `string \| number \| (string \| number)[] \| AbstractControl` | - | - | 配合 `@idux/cdk/forms` 使用, 参考 [Form](/components/form/zh) | | `clearable` | 是否显示清除图标 | `boolean` | `false` | ✅ | - | | `clearIcon` | 设置清除图标 | `string \| #clearIcon` | `'close-circle'` | ✅ | - | | `computeCount` | 自定义计算字符数的函数 | `(value: string) => string` | - | ✅ | 优先级高于 `maxCount` |