UNPKG

@mooses/form

Version:

[在线例子](https://qq2009.github.io/mooses/#/form)

99 lines (83 loc) 2.16 kB
interface FormBaseConfig<T = string> { // 标签 label?: string; // 标签位置 span?: number; // 字段 field: string; // 默认值 defaultValue?: T; [key: string]: any; } // 表单输入框配置 export interface FormInputConfig extends FormBaseConfig<string> { // 组件类型 el: 'input'; } // 表单输入框配置 interface FormInputNumberConfig extends FormBaseConfig { el: 'input-number'; } // 表单选择器配置 interface FormSelectConfig extends FormBaseConfig { el: 'select'; options: Array<Record<string, unknown>> | Function; } // 表单选择器配置 - 虚拟化选择器 interface FormVSelectConfig extends FormBaseConfig { el: 'select-v2'; options: Array<Record<string, unknown>> | Function; } // 表单时间选择器配置 interface FormTimePickerConfig extends FormBaseConfig { el: 'time-picker'; isRange: boolean; startField: string; endField: string; } // 表单级联选择器配置 interface FormCascaderConfig extends FormBaseConfig { el: 'cascader'; } // 表单树形选择配置 interface FormTreeSelectConfig extends FormBaseConfig { el: 'tree-select'; } // 表单时间选择配置 interface FormTimeSelectConfig extends FormBaseConfig { el: 'time-select'; } // 表单开关配置 interface FormSwitchConfig extends FormBaseConfig { el: 'switch'; } // 表单滑块配置 interface FormSliderConfig extends FormBaseConfig { el: 'slider'; } // 表单单选框配置 interface FormRadioConfig extends FormBaseConfig { el: 'radio'; } // 表单日期选择器配置 interface FormDatePickerConfig extends FormBaseConfig { el: 'date-picker'; } // 表单颜色选择器配置 interface FormColorPickerConfig extends FormBaseConfig { el: 'color-picker'; } export type FormConfig = | FormInputConfig | FormInputNumberConfig | FormSelectConfig | FormVSelectConfig | FormTimePickerConfig | FormCascaderConfig | FormTreeSelectConfig | FormTimeSelectConfig | FormSwitchConfig | FormSliderConfig | FormRadioConfig | FormDatePickerConfig | FormColorPickerConfig;