From d6749f95c526c0e71ec946bd3bb777bc42b2c34a Mon Sep 17 00:00:00 2001 From: Ben Lin <maobin001@msn.com> Date: 星期日, 20 十月 2024 17:59:31 +0800 Subject: [PATCH] 工艺绑定优化 --- src/components/Form/src/componentMap.ts | 44 +++++++++++++++++++++++++++----------------- 1 files changed, 27 insertions(+), 17 deletions(-) diff --git a/src/components/Form/src/componentMap.ts b/src/components/Form/src/componentMap.ts index 53e65c9..687db26 100644 --- a/src/components/Form/src/componentMap.ts +++ b/src/components/Form/src/componentMap.ts @@ -1,26 +1,26 @@ import type { Component } from 'vue'; -import type { ComponentType } from './types/index'; +import type { ComponentType } from './types'; /** * Component list, register here to setting it in the form */ import { - Input, - Select, - Radio, - Checkbox, AutoComplete, Cascader, + Checkbox, DatePicker, + Divider, + Input, InputNumber, + Radio, + Rate, + Select, + Slider, Switch, TimePicker, TreeSelect, - Slider, - Rate, - Divider, + Transfer, } from 'ant-design-vue'; - import ApiRadioGroup from './components/ApiRadioGroup.vue'; import RadioButtonGroup from './components/RadioButtonGroup.vue'; import ApiSelect from './components/ApiSelect.vue'; @@ -28,12 +28,14 @@ import ApiTreeSelect from './components/ApiTreeSelect.vue'; import ApiCascader from './components/ApiCascader.vue'; import ApiTransfer from './components/ApiTransfer.vue'; -import { BasicUpload } from '/@/components/Upload'; -import { StrengthMeter } from '/@/components/StrengthMeter'; -import { IconPicker } from '/@/components/Icon'; -import { CountdownInput } from '/@/components/CountDown'; +import { BasicUpload, ImageUpload } from '@/components/Upload'; +import { StrengthMeter } from '@/components/StrengthMeter'; +import { IconPicker } from '@/components/Icon'; +import { CountdownInput } from '@/components/CountDown'; +import { BasicTitle } from '@/components/Basic'; +import { CropperAvatar } from '@/components/Cropper'; -const componentMap = new Map<ComponentType, Component>(); +const componentMap = new Map<ComponentType | string, Component>(); componentMap.set('Input', Input); componentMap.set('InputGroup', Input.Group); @@ -42,7 +44,7 @@ componentMap.set('InputTextArea', Input.TextArea); componentMap.set('InputNumber', InputNumber); componentMap.set('AutoComplete', AutoComplete); - +componentMap.set('ImageUpload', ImageUpload); componentMap.set('Select', Select); componentMap.set('ApiSelect', ApiSelect); componentMap.set('ApiTree', ApiTree); @@ -58,6 +60,7 @@ componentMap.set('Cascader', Cascader); componentMap.set('Slider', Slider); componentMap.set('Rate', Rate); +componentMap.set('Transfer', Transfer); componentMap.set('ApiTransfer', ApiTransfer); componentMap.set('DatePicker', DatePicker); @@ -65,18 +68,25 @@ componentMap.set('RangePicker', DatePicker.RangePicker); componentMap.set('WeekPicker', DatePicker.WeekPicker); componentMap.set('TimePicker', TimePicker); +componentMap.set('TimeRangePicker', TimePicker.TimeRangePicker); componentMap.set('StrengthMeter', StrengthMeter); componentMap.set('IconPicker', IconPicker); componentMap.set('InputCountDown', CountdownInput); componentMap.set('Upload', BasicUpload); componentMap.set('Divider', Divider); +componentMap.set('CropperAvatar', CropperAvatar); -export function add(compName: ComponentType, component: Component) { +componentMap.set('BasicTitle', BasicTitle); + +export function add<T extends string, R extends Component>( + compName: ComponentType | T, + component: R, +) { componentMap.set(compName, component); } -export function del(compName: ComponentType) { +export function del<T extends string>(compName: ComponentType | T) { componentMap.delete(compName); } -- Gitblit v1.9.3