@qin-ui/vant-pro 1.0.5 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AI-CONTEXT.md +48 -33
- package/LICENSE +9 -0
- package/README.md +1 -1
- package/api.json +27 -22
- package/es/component-provider/{index-DC_k4_R3.js → index-cldbPMDQ.js} +5 -4
- package/es/component-provider/index-cldbPMDQ.js.map +1 -0
- package/es/component-provider/index.js +2 -1
- package/es/component-provider/index.js.map +1 -0
- package/es/components/component-provider/components/index.vue.d.ts +27 -0
- package/es/components/component-provider/components/index.vue.d.ts.map +1 -0
- package/es/components/component-provider/constants/index.d.ts +16 -0
- package/es/components/component-provider/constants/index.d.ts.map +1 -0
- package/es/components/component-provider/index.d.ts +4 -0
- package/es/components/component-provider/index.d.ts.map +1 -0
- package/es/components/component-provider/types/index.d.ts +16 -0
- package/es/components/component-provider/types/index.d.ts.map +1 -0
- package/es/components/form/components/BaseField/index.vue.d.ts +1323 -0
- package/es/components/form/components/BaseField/index.vue.d.ts.map +1 -0
- package/es/components/form/components/BaseField/utils/index.d.ts +3 -0
- package/es/components/form/components/BaseField/utils/index.d.ts.map +1 -0
- package/es/components/form/components/BaseFormItem/index.vue.d.ts +7 -0
- package/es/components/form/components/BaseFormItem/index.vue.d.ts.map +1 -0
- package/es/components/form/components/ContainerFragment/index.vue.d.ts +23 -0
- package/es/components/form/components/ContainerFragment/index.vue.d.ts.map +1 -0
- package/es/components/form/components/GroupedFieldAttrs/index.vue.d.ts +24 -0
- package/es/components/form/components/GroupedFieldAttrs/index.vue.d.ts.map +1 -0
- package/es/components/form/components/PathProvider/index.vue.d.ts +23 -0
- package/es/components/form/components/PathProvider/index.vue.d.ts.map +1 -0
- package/es/components/form/components/ProForm/index.vue.d.ts +34 -0
- package/es/components/form/components/ProForm/index.vue.d.ts.map +1 -0
- package/es/components/form/components/SlotComponent/index.vue.d.ts +7 -0
- package/es/components/form/components/SlotComponent/index.vue.d.ts.map +1 -0
- package/es/components/form/components/index.d.ts +12 -0
- package/es/components/form/components/index.d.ts.map +1 -0
- package/es/components/form/constants/index.d.ts +62 -0
- package/es/components/form/constants/index.d.ts.map +1 -0
- package/es/components/form/hooks/index.d.ts +6 -0
- package/es/components/form/hooks/index.d.ts.map +1 -0
- package/es/components/form/hooks/useFields.d.ts +57 -0
- package/es/components/form/hooks/useFields.d.ts.map +1 -0
- package/es/components/form/hooks/useForm.d.ts +101 -0
- package/es/components/form/hooks/useForm.d.ts.map +1 -0
- package/es/components/form/hooks/useFormPopup.d.ts +57 -0
- package/es/components/form/hooks/useFormPopup.d.ts.map +1 -0
- package/es/components/form/hooks/useFormRef.d.ts +30 -0
- package/es/components/form/hooks/useFormRef.d.ts.map +1 -0
- package/es/components/form/index.d.ts +7 -0
- package/es/components/form/index.d.ts.map +1 -0
- package/es/components/form/types/index.d.ts +152 -0
- package/es/components/form/types/index.d.ts.map +1 -0
- package/es/form/index.js +11 -7
- package/es/form/index.js.map +1 -0
- package/es/index.d.ts +58 -954
- package/es/index.d.ts.map +1 -0
- package/es/index.js +10 -21
- package/es/index.js.map +1 -0
- package/es/shared/core/index.d.ts +6 -0
- package/es/shared/core/index.d.ts.map +1 -0
- package/es/shared/ui/index.d.ts +2 -0
- package/es/shared/ui/index.d.ts.map +1 -0
- package/package.json +11 -12
- package/src/components/component-provider/components/index.vue +67 -0
- package/src/components/component-provider/constants/index.ts +110 -0
- package/src/components/component-provider/index.ts +6 -0
- package/src/components/component-provider/types/index.ts +31 -0
- package/src/components/form/components/BaseField/index.vue +340 -0
- package/src/components/form/components/BaseField/utils/index.ts +14 -0
- package/src/components/form/components/BaseFormItem/index.vue +77 -0
- package/src/components/form/components/ContainerFragment/index.vue +24 -0
- package/src/components/form/components/GroupedFieldAttrs/index.vue +51 -0
- package/src/components/form/components/PathProvider/index.vue +18 -0
- package/src/components/form/components/ProForm/index.vue +114 -0
- package/src/components/form/components/SlotComponent/index.vue +26 -0
- package/src/components/form/components/index.ts +15 -0
- package/src/components/form/constants/index.ts +109 -0
- package/src/components/form/hooks/index.ts +6 -0
- package/src/components/form/hooks/useFields.ts +67 -0
- package/src/components/form/hooks/useForm.ts +126 -0
- package/src/components/form/hooks/useFormPopup.ts +111 -0
- package/src/components/form/hooks/useFormRef.ts +35 -0
- package/src/components/form/index.ts +27 -0
- package/src/components/form/types/index.ts +220 -0
- package/src/index.ts +62 -0
- package/src/shared/core/index.ts +37 -0
- package/src/shared/ui/index.ts +26 -0
- package/es/core/index-B5vvm4Fj.js +0 -236
- package/es/vendor/utils/lodash-es-DN4QDiDm.js +0 -1079
|
@@ -0,0 +1,1323 @@
|
|
|
1
|
+
import { Component } from 'vue';
|
|
2
|
+
type Props = {
|
|
3
|
+
component?: string | Component;
|
|
4
|
+
path?: string;
|
|
5
|
+
};
|
|
6
|
+
declare const _default: import('vue').DefineComponent<Props, {
|
|
7
|
+
getComponentRef: () => any;
|
|
8
|
+
getComponentComputedProps: () => any;
|
|
9
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
10
|
+
fieldRef: ({
|
|
11
|
+
$: import('vue').ComponentInternalInstance;
|
|
12
|
+
$data: {};
|
|
13
|
+
$props: Partial<{
|
|
14
|
+
type: import('vant').FieldType;
|
|
15
|
+
tag: keyof HTMLElementTagNameMap;
|
|
16
|
+
center: boolean;
|
|
17
|
+
autofocus: boolean;
|
|
18
|
+
disabled: boolean;
|
|
19
|
+
border: boolean;
|
|
20
|
+
isLink: boolean;
|
|
21
|
+
required: boolean | "auto";
|
|
22
|
+
clickable: boolean | null;
|
|
23
|
+
clearable: boolean;
|
|
24
|
+
clearIcon: string;
|
|
25
|
+
modelValue: string | number;
|
|
26
|
+
clearTrigger: import('vant').FieldClearTrigger;
|
|
27
|
+
formatTrigger: import('vant').FieldFormatTrigger;
|
|
28
|
+
spellcheck: boolean;
|
|
29
|
+
error: boolean;
|
|
30
|
+
readonly: boolean;
|
|
31
|
+
showWordLimit: boolean;
|
|
32
|
+
colon: boolean;
|
|
33
|
+
}> & Omit<{
|
|
34
|
+
readonly tag: keyof HTMLElementTagNameMap;
|
|
35
|
+
readonly center: boolean;
|
|
36
|
+
readonly isLink: boolean;
|
|
37
|
+
readonly border: boolean;
|
|
38
|
+
readonly required: boolean | "auto";
|
|
39
|
+
readonly clickable: boolean | null;
|
|
40
|
+
readonly autofocus: boolean;
|
|
41
|
+
readonly clearable: boolean;
|
|
42
|
+
readonly clearIcon: string;
|
|
43
|
+
readonly modelValue: string | number;
|
|
44
|
+
readonly clearTrigger: import('vant').FieldClearTrigger;
|
|
45
|
+
readonly formatTrigger: import('vant').FieldFormatTrigger;
|
|
46
|
+
readonly spellcheck: boolean;
|
|
47
|
+
readonly error: boolean;
|
|
48
|
+
readonly disabled: boolean;
|
|
49
|
+
readonly readonly: boolean;
|
|
50
|
+
readonly type: import('vant').FieldType;
|
|
51
|
+
readonly showWordLimit: boolean;
|
|
52
|
+
readonly colon: boolean;
|
|
53
|
+
readonly icon?: string | undefined;
|
|
54
|
+
readonly size?: import('vant').CellSize | undefined;
|
|
55
|
+
readonly title?: string | number | undefined;
|
|
56
|
+
readonly value?: string | number | undefined;
|
|
57
|
+
readonly label?: string | number | undefined;
|
|
58
|
+
readonly iconPrefix?: string | undefined;
|
|
59
|
+
readonly valueClass?: unknown;
|
|
60
|
+
readonly labelClass?: unknown;
|
|
61
|
+
readonly titleClass?: unknown;
|
|
62
|
+
readonly titleStyle?: string | import('vue').CSSProperties | undefined;
|
|
63
|
+
readonly arrowDirection?: import('vant').CellArrowDirection | undefined;
|
|
64
|
+
readonly id?: string | undefined;
|
|
65
|
+
readonly name?: string | undefined;
|
|
66
|
+
readonly leftIcon?: string | undefined;
|
|
67
|
+
readonly rightIcon?: string | undefined;
|
|
68
|
+
readonly maxlength?: string | number | undefined;
|
|
69
|
+
readonly max?: number | undefined;
|
|
70
|
+
readonly min?: number | undefined;
|
|
71
|
+
readonly formatter?: ((value: string) => string) | undefined;
|
|
72
|
+
readonly inputAlign?: import('vant').FieldTextAlign | undefined;
|
|
73
|
+
readonly placeholder?: string | undefined;
|
|
74
|
+
readonly autocomplete?: string | undefined;
|
|
75
|
+
readonly autocapitalize?: string | undefined;
|
|
76
|
+
readonly autocorrect?: string | undefined;
|
|
77
|
+
readonly errorMessage?: string | undefined;
|
|
78
|
+
readonly enterkeyhint?: import('vant').FieldEnterKeyHint | undefined;
|
|
79
|
+
readonly inputmode?: "search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
|
|
80
|
+
readonly rows?: string | number | undefined;
|
|
81
|
+
readonly rules?: import('vant').FieldRule[] | undefined;
|
|
82
|
+
readonly autosize?: boolean | import('vant').FieldAutosizeConfig | undefined;
|
|
83
|
+
readonly labelWidth?: string | number | undefined;
|
|
84
|
+
readonly labelAlign?: import('vant').FieldTextAlign | undefined;
|
|
85
|
+
readonly errorMessageAlign?: import('vant').FieldTextAlign | undefined;
|
|
86
|
+
readonly onFocus?: ((
|
|
87
|
+
/**
|
|
88
|
+
* @component BaseField
|
|
89
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
90
|
+
*
|
|
91
|
+
* ## 核心职责
|
|
92
|
+
*
|
|
93
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
94
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
95
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
96
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
97
|
+
*
|
|
98
|
+
* ## 组件解析优先级
|
|
99
|
+
*
|
|
100
|
+
* ```
|
|
101
|
+
* teleport 组件(ProForm 插槽注入)
|
|
102
|
+
* ↓ 未匹配
|
|
103
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
104
|
+
* ↓ 未匹配
|
|
105
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
106
|
+
* ↓ 未匹配
|
|
107
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
108
|
+
* ```
|
|
109
|
+
*
|
|
110
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
111
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
112
|
+
*
|
|
113
|
+
* @slot default - 默认插槽(透传给组件)
|
|
114
|
+
*/
|
|
115
|
+
...args: any[]) => any) | undefined | undefined;
|
|
116
|
+
readonly onBlur?: ((
|
|
117
|
+
/**
|
|
118
|
+
* @component BaseField
|
|
119
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
120
|
+
*
|
|
121
|
+
* ## 核心职责
|
|
122
|
+
*
|
|
123
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
124
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
125
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
126
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
127
|
+
*
|
|
128
|
+
* ## 组件解析优先级
|
|
129
|
+
*
|
|
130
|
+
* ```
|
|
131
|
+
* teleport 组件(ProForm 插槽注入)
|
|
132
|
+
* ↓ 未匹配
|
|
133
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
134
|
+
* ↓ 未匹配
|
|
135
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
136
|
+
* ↓ 未匹配
|
|
137
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
138
|
+
* ```
|
|
139
|
+
*
|
|
140
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
141
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
142
|
+
*
|
|
143
|
+
* @slot default - 默认插槽(透传给组件)
|
|
144
|
+
*/
|
|
145
|
+
...args: any[]) => any) | undefined | undefined;
|
|
146
|
+
readonly onKeypress?: ((
|
|
147
|
+
/**
|
|
148
|
+
* @component BaseField
|
|
149
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
150
|
+
*
|
|
151
|
+
* ## 核心职责
|
|
152
|
+
*
|
|
153
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
154
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
155
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
156
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
157
|
+
*
|
|
158
|
+
* ## 组件解析优先级
|
|
159
|
+
*
|
|
160
|
+
* ```
|
|
161
|
+
* teleport 组件(ProForm 插槽注入)
|
|
162
|
+
* ↓ 未匹配
|
|
163
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
164
|
+
* ↓ 未匹配
|
|
165
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
166
|
+
* ↓ 未匹配
|
|
167
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
168
|
+
* ```
|
|
169
|
+
*
|
|
170
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
171
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
172
|
+
*
|
|
173
|
+
* @slot default - 默认插槽(透传给组件)
|
|
174
|
+
*/
|
|
175
|
+
...args: any[]) => any) | undefined | undefined;
|
|
176
|
+
readonly onClear?: ((
|
|
177
|
+
/**
|
|
178
|
+
* @component BaseField
|
|
179
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
180
|
+
*
|
|
181
|
+
* ## 核心职责
|
|
182
|
+
*
|
|
183
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
184
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
185
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
186
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
187
|
+
*
|
|
188
|
+
* ## 组件解析优先级
|
|
189
|
+
*
|
|
190
|
+
* ```
|
|
191
|
+
* teleport 组件(ProForm 插槽注入)
|
|
192
|
+
* ↓ 未匹配
|
|
193
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
194
|
+
* ↓ 未匹配
|
|
195
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
196
|
+
* ↓ 未匹配
|
|
197
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
198
|
+
* ```
|
|
199
|
+
*
|
|
200
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
201
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
202
|
+
*
|
|
203
|
+
* @slot default - 默认插槽(透传给组件)
|
|
204
|
+
*/
|
|
205
|
+
...args: any[]) => any) | undefined | undefined;
|
|
206
|
+
readonly onClickInput?: ((
|
|
207
|
+
/**
|
|
208
|
+
* @component BaseField
|
|
209
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
210
|
+
*
|
|
211
|
+
* ## 核心职责
|
|
212
|
+
*
|
|
213
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
214
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
215
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
216
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
217
|
+
*
|
|
218
|
+
* ## 组件解析优先级
|
|
219
|
+
*
|
|
220
|
+
* ```
|
|
221
|
+
* teleport 组件(ProForm 插槽注入)
|
|
222
|
+
* ↓ 未匹配
|
|
223
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
224
|
+
* ↓ 未匹配
|
|
225
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
226
|
+
* ↓ 未匹配
|
|
227
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
228
|
+
* ```
|
|
229
|
+
*
|
|
230
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
231
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
232
|
+
*
|
|
233
|
+
* @slot default - 默认插槽(透传给组件)
|
|
234
|
+
*/
|
|
235
|
+
...args: any[]) => any) | undefined | undefined;
|
|
236
|
+
readonly onEndValidate?: ((
|
|
237
|
+
/**
|
|
238
|
+
* @component BaseField
|
|
239
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
240
|
+
*
|
|
241
|
+
* ## 核心职责
|
|
242
|
+
*
|
|
243
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
244
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
245
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
246
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
247
|
+
*
|
|
248
|
+
* ## 组件解析优先级
|
|
249
|
+
*
|
|
250
|
+
* ```
|
|
251
|
+
* teleport 组件(ProForm 插槽注入)
|
|
252
|
+
* ↓ 未匹配
|
|
253
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
254
|
+
* ↓ 未匹配
|
|
255
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
256
|
+
* ↓ 未匹配
|
|
257
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
258
|
+
* ```
|
|
259
|
+
*
|
|
260
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
261
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
262
|
+
*
|
|
263
|
+
* @slot default - 默认插槽(透传给组件)
|
|
264
|
+
*/
|
|
265
|
+
...args: any[]) => any) | undefined | undefined;
|
|
266
|
+
readonly onStartValidate?: ((
|
|
267
|
+
/**
|
|
268
|
+
* @component BaseField
|
|
269
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
270
|
+
*
|
|
271
|
+
* ## 核心职责
|
|
272
|
+
*
|
|
273
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
274
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
275
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
276
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
277
|
+
*
|
|
278
|
+
* ## 组件解析优先级
|
|
279
|
+
*
|
|
280
|
+
* ```
|
|
281
|
+
* teleport 组件(ProForm 插槽注入)
|
|
282
|
+
* ↓ 未匹配
|
|
283
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
284
|
+
* ↓ 未匹配
|
|
285
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
286
|
+
* ↓ 未匹配
|
|
287
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
288
|
+
* ```
|
|
289
|
+
*
|
|
290
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
291
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
292
|
+
*
|
|
293
|
+
* @slot default - 默认插槽(透传给组件)
|
|
294
|
+
*/
|
|
295
|
+
...args: any[]) => any) | undefined | undefined;
|
|
296
|
+
readonly onClickLeftIcon?: ((
|
|
297
|
+
/**
|
|
298
|
+
* @component BaseField
|
|
299
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
300
|
+
*
|
|
301
|
+
* ## 核心职责
|
|
302
|
+
*
|
|
303
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
304
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
305
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
306
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
307
|
+
*
|
|
308
|
+
* ## 组件解析优先级
|
|
309
|
+
*
|
|
310
|
+
* ```
|
|
311
|
+
* teleport 组件(ProForm 插槽注入)
|
|
312
|
+
* ↓ 未匹配
|
|
313
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
314
|
+
* ↓ 未匹配
|
|
315
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
316
|
+
* ↓ 未匹配
|
|
317
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
318
|
+
* ```
|
|
319
|
+
*
|
|
320
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
321
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
322
|
+
*
|
|
323
|
+
* @slot default - 默认插槽(透传给组件)
|
|
324
|
+
*/
|
|
325
|
+
...args: any[]) => any) | undefined | undefined;
|
|
326
|
+
readonly onClickRightIcon?: ((
|
|
327
|
+
/**
|
|
328
|
+
* @component BaseField
|
|
329
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
330
|
+
*
|
|
331
|
+
* ## 核心职责
|
|
332
|
+
*
|
|
333
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
334
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
335
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
336
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
337
|
+
*
|
|
338
|
+
* ## 组件解析优先级
|
|
339
|
+
*
|
|
340
|
+
* ```
|
|
341
|
+
* teleport 组件(ProForm 插槽注入)
|
|
342
|
+
* ↓ 未匹配
|
|
343
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
344
|
+
* ↓ 未匹配
|
|
345
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
346
|
+
* ↓ 未匹配
|
|
347
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
348
|
+
* ```
|
|
349
|
+
*
|
|
350
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
351
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
352
|
+
*
|
|
353
|
+
* @slot default - 默认插槽(透传给组件)
|
|
354
|
+
*/
|
|
355
|
+
...args: any[]) => any) | undefined | undefined;
|
|
356
|
+
readonly "onUpdate:modelValue"?: ((
|
|
357
|
+
/**
|
|
358
|
+
* @component BaseField
|
|
359
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
360
|
+
*
|
|
361
|
+
* ## 核心职责
|
|
362
|
+
*
|
|
363
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
364
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
365
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
366
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
367
|
+
*
|
|
368
|
+
* ## 组件解析优先级
|
|
369
|
+
*
|
|
370
|
+
* ```
|
|
371
|
+
* teleport 组件(ProForm 插槽注入)
|
|
372
|
+
* ↓ 未匹配
|
|
373
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
374
|
+
* ↓ 未匹配
|
|
375
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
376
|
+
* ↓ 未匹配
|
|
377
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
378
|
+
* ```
|
|
379
|
+
*
|
|
380
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
381
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
382
|
+
*
|
|
383
|
+
* @slot default - 默认插槽(透传给组件)
|
|
384
|
+
*/
|
|
385
|
+
...args: any[]) => any) | undefined | undefined;
|
|
386
|
+
} & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "tag" | "center" | "isLink" | "border" | "required" | "clickable" | "autofocus" | "clearable" | "clearIcon" | "modelValue" | "clearTrigger" | "formatTrigger" | "spellcheck" | "error" | "disabled" | "readonly" | "type" | "showWordLimit" | "colon">;
|
|
387
|
+
$attrs: import('vue').Attrs;
|
|
388
|
+
$refs: {
|
|
389
|
+
[x: string]: unknown;
|
|
390
|
+
};
|
|
391
|
+
$slots: Readonly<{
|
|
392
|
+
[name: string]: import('vue').Slot<any> | undefined;
|
|
393
|
+
}>;
|
|
394
|
+
$root: import('vue').ComponentPublicInstance | null;
|
|
395
|
+
$parent: import('vue').ComponentPublicInstance | null;
|
|
396
|
+
$host: Element | null;
|
|
397
|
+
$emit: (event: "focus" | "clear" | "blur" | "keypress" | "clickInput" | "endValidate" | "startValidate" | "clickLeftIcon" | "clickRightIcon" | "update:modelValue", ...args: any[]) => void;
|
|
398
|
+
$el: any;
|
|
399
|
+
$options: import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
|
|
400
|
+
tag: {
|
|
401
|
+
type: import('vue').PropType<keyof HTMLElementTagNameMap>;
|
|
402
|
+
default: keyof HTMLElementTagNameMap;
|
|
403
|
+
};
|
|
404
|
+
icon: StringConstructor;
|
|
405
|
+
size: import('vue').PropType<import('vant').CellSize>;
|
|
406
|
+
title: (NumberConstructor | StringConstructor)[];
|
|
407
|
+
value: (NumberConstructor | StringConstructor)[];
|
|
408
|
+
label: (NumberConstructor | StringConstructor)[];
|
|
409
|
+
center: BooleanConstructor;
|
|
410
|
+
isLink: BooleanConstructor;
|
|
411
|
+
border: {
|
|
412
|
+
type: BooleanConstructor;
|
|
413
|
+
default: true;
|
|
414
|
+
};
|
|
415
|
+
iconPrefix: StringConstructor;
|
|
416
|
+
valueClass: import('vue').PropType<unknown>;
|
|
417
|
+
labelClass: import('vue').PropType<unknown>;
|
|
418
|
+
titleClass: import('vue').PropType<unknown>;
|
|
419
|
+
titleStyle: import('vue').PropType<string | import('vue').CSSProperties>;
|
|
420
|
+
arrowDirection: import('vue').PropType<import('vant').CellArrowDirection>;
|
|
421
|
+
required: {
|
|
422
|
+
type: import('vue').PropType<boolean | "auto">;
|
|
423
|
+
default: null;
|
|
424
|
+
};
|
|
425
|
+
clickable: {
|
|
426
|
+
type: import('vue').PropType<boolean | null>;
|
|
427
|
+
default: null;
|
|
428
|
+
};
|
|
429
|
+
} & {
|
|
430
|
+
id: StringConstructor;
|
|
431
|
+
name: StringConstructor;
|
|
432
|
+
leftIcon: StringConstructor;
|
|
433
|
+
rightIcon: StringConstructor;
|
|
434
|
+
autofocus: BooleanConstructor;
|
|
435
|
+
clearable: BooleanConstructor;
|
|
436
|
+
maxlength: (NumberConstructor | StringConstructor)[];
|
|
437
|
+
max: NumberConstructor;
|
|
438
|
+
min: NumberConstructor;
|
|
439
|
+
formatter: import('vue').PropType<(value: string) => string>;
|
|
440
|
+
clearIcon: {
|
|
441
|
+
type: import('vue').PropType<string>;
|
|
442
|
+
default: string;
|
|
443
|
+
};
|
|
444
|
+
modelValue: {
|
|
445
|
+
type: (NumberConstructor | StringConstructor)[];
|
|
446
|
+
default: string;
|
|
447
|
+
};
|
|
448
|
+
inputAlign: import('vue').PropType<import('vant').FieldTextAlign>;
|
|
449
|
+
placeholder: StringConstructor;
|
|
450
|
+
autocomplete: StringConstructor;
|
|
451
|
+
autocapitalize: StringConstructor;
|
|
452
|
+
autocorrect: StringConstructor;
|
|
453
|
+
errorMessage: StringConstructor;
|
|
454
|
+
enterkeyhint: import('vue').PropType<import('vant').FieldEnterKeyHint>;
|
|
455
|
+
clearTrigger: {
|
|
456
|
+
type: import('vue').PropType<import('vant').FieldClearTrigger>;
|
|
457
|
+
default: import('vant').FieldClearTrigger;
|
|
458
|
+
};
|
|
459
|
+
formatTrigger: {
|
|
460
|
+
type: import('vue').PropType<import('vant').FieldFormatTrigger>;
|
|
461
|
+
default: import('vant').FieldFormatTrigger;
|
|
462
|
+
};
|
|
463
|
+
spellcheck: {
|
|
464
|
+
type: BooleanConstructor;
|
|
465
|
+
default: null;
|
|
466
|
+
};
|
|
467
|
+
error: {
|
|
468
|
+
type: BooleanConstructor;
|
|
469
|
+
default: null;
|
|
470
|
+
};
|
|
471
|
+
disabled: {
|
|
472
|
+
type: BooleanConstructor;
|
|
473
|
+
default: null;
|
|
474
|
+
};
|
|
475
|
+
readonly: {
|
|
476
|
+
type: BooleanConstructor;
|
|
477
|
+
default: null;
|
|
478
|
+
};
|
|
479
|
+
inputmode: import('vue').PropType<import('vue').HTMLAttributes["inputmode"]>;
|
|
480
|
+
} & {
|
|
481
|
+
rows: (NumberConstructor | StringConstructor)[];
|
|
482
|
+
type: {
|
|
483
|
+
type: import('vue').PropType<import('vant').FieldType>;
|
|
484
|
+
default: import('vant').FieldType;
|
|
485
|
+
};
|
|
486
|
+
rules: import('vue').PropType<import('vant').FieldRule[]>;
|
|
487
|
+
autosize: import('vue').PropType<boolean | import('vant').FieldAutosizeConfig>;
|
|
488
|
+
labelWidth: (NumberConstructor | StringConstructor)[];
|
|
489
|
+
labelClass: import('vue').PropType<unknown>;
|
|
490
|
+
labelAlign: import('vue').PropType<import('vant').FieldTextAlign>;
|
|
491
|
+
showWordLimit: BooleanConstructor;
|
|
492
|
+
errorMessageAlign: import('vue').PropType<import('vant').FieldTextAlign>;
|
|
493
|
+
colon: {
|
|
494
|
+
type: BooleanConstructor;
|
|
495
|
+
default: null;
|
|
496
|
+
};
|
|
497
|
+
}>> & Readonly<{
|
|
498
|
+
onFocus?: ((
|
|
499
|
+
/**
|
|
500
|
+
* @component BaseField
|
|
501
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
502
|
+
*
|
|
503
|
+
* ## 核心职责
|
|
504
|
+
*
|
|
505
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
506
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
507
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
508
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
509
|
+
*
|
|
510
|
+
* ## 组件解析优先级
|
|
511
|
+
*
|
|
512
|
+
* ```
|
|
513
|
+
* teleport 组件(ProForm 插槽注入)
|
|
514
|
+
* ↓ 未匹配
|
|
515
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
516
|
+
* ↓ 未匹配
|
|
517
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
518
|
+
* ↓ 未匹配
|
|
519
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
520
|
+
* ```
|
|
521
|
+
*
|
|
522
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
523
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
524
|
+
*
|
|
525
|
+
* @slot default - 默认插槽(透传给组件)
|
|
526
|
+
*/
|
|
527
|
+
...args: any[]) => any) | undefined;
|
|
528
|
+
onBlur?: ((
|
|
529
|
+
/**
|
|
530
|
+
* @component BaseField
|
|
531
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
532
|
+
*
|
|
533
|
+
* ## 核心职责
|
|
534
|
+
*
|
|
535
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
536
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
537
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
538
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
539
|
+
*
|
|
540
|
+
* ## 组件解析优先级
|
|
541
|
+
*
|
|
542
|
+
* ```
|
|
543
|
+
* teleport 组件(ProForm 插槽注入)
|
|
544
|
+
* ↓ 未匹配
|
|
545
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
546
|
+
* ↓ 未匹配
|
|
547
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
548
|
+
* ↓ 未匹配
|
|
549
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
550
|
+
* ```
|
|
551
|
+
*
|
|
552
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
553
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
554
|
+
*
|
|
555
|
+
* @slot default - 默认插槽(透传给组件)
|
|
556
|
+
*/
|
|
557
|
+
...args: any[]) => any) | undefined;
|
|
558
|
+
onKeypress?: ((
|
|
559
|
+
/**
|
|
560
|
+
* @component BaseField
|
|
561
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
562
|
+
*
|
|
563
|
+
* ## 核心职责
|
|
564
|
+
*
|
|
565
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
566
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
567
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
568
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
569
|
+
*
|
|
570
|
+
* ## 组件解析优先级
|
|
571
|
+
*
|
|
572
|
+
* ```
|
|
573
|
+
* teleport 组件(ProForm 插槽注入)
|
|
574
|
+
* ↓ 未匹配
|
|
575
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
576
|
+
* ↓ 未匹配
|
|
577
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
578
|
+
* ↓ 未匹配
|
|
579
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
580
|
+
* ```
|
|
581
|
+
*
|
|
582
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
583
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
584
|
+
*
|
|
585
|
+
* @slot default - 默认插槽(透传给组件)
|
|
586
|
+
*/
|
|
587
|
+
...args: any[]) => any) | undefined;
|
|
588
|
+
onClear?: ((
|
|
589
|
+
/**
|
|
590
|
+
* @component BaseField
|
|
591
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
592
|
+
*
|
|
593
|
+
* ## 核心职责
|
|
594
|
+
*
|
|
595
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
596
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
597
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
598
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
599
|
+
*
|
|
600
|
+
* ## 组件解析优先级
|
|
601
|
+
*
|
|
602
|
+
* ```
|
|
603
|
+
* teleport 组件(ProForm 插槽注入)
|
|
604
|
+
* ↓ 未匹配
|
|
605
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
606
|
+
* ↓ 未匹配
|
|
607
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
608
|
+
* ↓ 未匹配
|
|
609
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
610
|
+
* ```
|
|
611
|
+
*
|
|
612
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
613
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
614
|
+
*
|
|
615
|
+
* @slot default - 默认插槽(透传给组件)
|
|
616
|
+
*/
|
|
617
|
+
...args: any[]) => any) | undefined;
|
|
618
|
+
onClickInput?: ((
|
|
619
|
+
/**
|
|
620
|
+
* @component BaseField
|
|
621
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
622
|
+
*
|
|
623
|
+
* ## 核心职责
|
|
624
|
+
*
|
|
625
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
626
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
627
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
628
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
629
|
+
*
|
|
630
|
+
* ## 组件解析优先级
|
|
631
|
+
*
|
|
632
|
+
* ```
|
|
633
|
+
* teleport 组件(ProForm 插槽注入)
|
|
634
|
+
* ↓ 未匹配
|
|
635
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
636
|
+
* ↓ 未匹配
|
|
637
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
638
|
+
* ↓ 未匹配
|
|
639
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
640
|
+
* ```
|
|
641
|
+
*
|
|
642
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
643
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
644
|
+
*
|
|
645
|
+
* @slot default - 默认插槽(透传给组件)
|
|
646
|
+
*/
|
|
647
|
+
...args: any[]) => any) | undefined;
|
|
648
|
+
onEndValidate?: ((
|
|
649
|
+
/**
|
|
650
|
+
* @component BaseField
|
|
651
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
652
|
+
*
|
|
653
|
+
* ## 核心职责
|
|
654
|
+
*
|
|
655
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
656
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
657
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
658
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
659
|
+
*
|
|
660
|
+
* ## 组件解析优先级
|
|
661
|
+
*
|
|
662
|
+
* ```
|
|
663
|
+
* teleport 组件(ProForm 插槽注入)
|
|
664
|
+
* ↓ 未匹配
|
|
665
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
666
|
+
* ↓ 未匹配
|
|
667
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
668
|
+
* ↓ 未匹配
|
|
669
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
670
|
+
* ```
|
|
671
|
+
*
|
|
672
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
673
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
674
|
+
*
|
|
675
|
+
* @slot default - 默认插槽(透传给组件)
|
|
676
|
+
*/
|
|
677
|
+
...args: any[]) => any) | undefined;
|
|
678
|
+
onStartValidate?: ((
|
|
679
|
+
/**
|
|
680
|
+
* @component BaseField
|
|
681
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
682
|
+
*
|
|
683
|
+
* ## 核心职责
|
|
684
|
+
*
|
|
685
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
686
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
687
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
688
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
689
|
+
*
|
|
690
|
+
* ## 组件解析优先级
|
|
691
|
+
*
|
|
692
|
+
* ```
|
|
693
|
+
* teleport 组件(ProForm 插槽注入)
|
|
694
|
+
* ↓ 未匹配
|
|
695
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
696
|
+
* ↓ 未匹配
|
|
697
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
698
|
+
* ↓ 未匹配
|
|
699
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
700
|
+
* ```
|
|
701
|
+
*
|
|
702
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
703
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
704
|
+
*
|
|
705
|
+
* @slot default - 默认插槽(透传给组件)
|
|
706
|
+
*/
|
|
707
|
+
...args: any[]) => any) | undefined;
|
|
708
|
+
onClickLeftIcon?: ((
|
|
709
|
+
/**
|
|
710
|
+
* @component BaseField
|
|
711
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
712
|
+
*
|
|
713
|
+
* ## 核心职责
|
|
714
|
+
*
|
|
715
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
716
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
717
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
718
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
719
|
+
*
|
|
720
|
+
* ## 组件解析优先级
|
|
721
|
+
*
|
|
722
|
+
* ```
|
|
723
|
+
* teleport 组件(ProForm 插槽注入)
|
|
724
|
+
* ↓ 未匹配
|
|
725
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
726
|
+
* ↓ 未匹配
|
|
727
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
728
|
+
* ↓ 未匹配
|
|
729
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
730
|
+
* ```
|
|
731
|
+
*
|
|
732
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
733
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
734
|
+
*
|
|
735
|
+
* @slot default - 默认插槽(透传给组件)
|
|
736
|
+
*/
|
|
737
|
+
...args: any[]) => any) | undefined;
|
|
738
|
+
onClickRightIcon?: ((
|
|
739
|
+
/**
|
|
740
|
+
* @component BaseField
|
|
741
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
742
|
+
*
|
|
743
|
+
* ## 核心职责
|
|
744
|
+
*
|
|
745
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
746
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
747
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
748
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
749
|
+
*
|
|
750
|
+
* ## 组件解析优先级
|
|
751
|
+
*
|
|
752
|
+
* ```
|
|
753
|
+
* teleport 组件(ProForm 插槽注入)
|
|
754
|
+
* ↓ 未匹配
|
|
755
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
756
|
+
* ↓ 未匹配
|
|
757
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
758
|
+
* ↓ 未匹配
|
|
759
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
760
|
+
* ```
|
|
761
|
+
*
|
|
762
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
763
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
764
|
+
*
|
|
765
|
+
* @slot default - 默认插槽(透传给组件)
|
|
766
|
+
*/
|
|
767
|
+
...args: any[]) => any) | undefined;
|
|
768
|
+
"onUpdate:modelValue"?: ((
|
|
769
|
+
/**
|
|
770
|
+
* @component BaseField
|
|
771
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
772
|
+
*
|
|
773
|
+
* ## 核心职责
|
|
774
|
+
*
|
|
775
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
776
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
777
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
778
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
779
|
+
*
|
|
780
|
+
* ## 组件解析优先级
|
|
781
|
+
*
|
|
782
|
+
* ```
|
|
783
|
+
* teleport 组件(ProForm 插槽注入)
|
|
784
|
+
* ↓ 未匹配
|
|
785
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
786
|
+
* ↓ 未匹配
|
|
787
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
788
|
+
* ↓ 未匹配
|
|
789
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
790
|
+
* ```
|
|
791
|
+
*
|
|
792
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
793
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
794
|
+
*
|
|
795
|
+
* @slot default - 默认插槽(透传给组件)
|
|
796
|
+
*/
|
|
797
|
+
...args: any[]) => any) | undefined;
|
|
798
|
+
}>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("focus" | "clear" | "blur" | "keypress" | "clickInput" | "endValidate" | "startValidate" | "clickLeftIcon" | "clickRightIcon" | "update:modelValue")[], string, {
|
|
799
|
+
type: import('vant').FieldType;
|
|
800
|
+
tag: keyof HTMLElementTagNameMap;
|
|
801
|
+
center: boolean;
|
|
802
|
+
autofocus: boolean;
|
|
803
|
+
disabled: boolean;
|
|
804
|
+
border: boolean;
|
|
805
|
+
isLink: boolean;
|
|
806
|
+
required: boolean | "auto";
|
|
807
|
+
clickable: boolean | null;
|
|
808
|
+
clearable: boolean;
|
|
809
|
+
clearIcon: string;
|
|
810
|
+
modelValue: string | number;
|
|
811
|
+
clearTrigger: import('vant').FieldClearTrigger;
|
|
812
|
+
formatTrigger: import('vant').FieldFormatTrigger;
|
|
813
|
+
spellcheck: boolean;
|
|
814
|
+
error: boolean;
|
|
815
|
+
readonly: boolean;
|
|
816
|
+
showWordLimit: boolean;
|
|
817
|
+
colon: boolean;
|
|
818
|
+
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
|
|
819
|
+
beforeCreate?: (() => void) | (() => void)[];
|
|
820
|
+
created?: (() => void) | (() => void)[];
|
|
821
|
+
beforeMount?: (() => void) | (() => void)[];
|
|
822
|
+
mounted?: (() => void) | (() => void)[];
|
|
823
|
+
beforeUpdate?: (() => void) | (() => void)[];
|
|
824
|
+
updated?: (() => void) | (() => void)[];
|
|
825
|
+
activated?: (() => void) | (() => void)[];
|
|
826
|
+
deactivated?: (() => void) | (() => void)[];
|
|
827
|
+
beforeDestroy?: (() => void) | (() => void)[];
|
|
828
|
+
beforeUnmount?: (() => void) | (() => void)[];
|
|
829
|
+
destroyed?: (() => void) | (() => void)[];
|
|
830
|
+
unmounted?: (() => void) | (() => void)[];
|
|
831
|
+
renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
|
|
832
|
+
renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
|
|
833
|
+
errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[];
|
|
834
|
+
};
|
|
835
|
+
$forceUpdate: () => void;
|
|
836
|
+
$nextTick: typeof import('vue').nextTick;
|
|
837
|
+
$watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
|
|
838
|
+
} & Readonly<{
|
|
839
|
+
type: import('vant').FieldType;
|
|
840
|
+
tag: keyof HTMLElementTagNameMap;
|
|
841
|
+
center: boolean;
|
|
842
|
+
autofocus: boolean;
|
|
843
|
+
disabled: boolean;
|
|
844
|
+
border: boolean;
|
|
845
|
+
isLink: boolean;
|
|
846
|
+
required: boolean | "auto";
|
|
847
|
+
clickable: boolean | null;
|
|
848
|
+
clearable: boolean;
|
|
849
|
+
clearIcon: string;
|
|
850
|
+
modelValue: string | number;
|
|
851
|
+
clearTrigger: import('vant').FieldClearTrigger;
|
|
852
|
+
formatTrigger: import('vant').FieldFormatTrigger;
|
|
853
|
+
spellcheck: boolean;
|
|
854
|
+
error: boolean;
|
|
855
|
+
readonly: boolean;
|
|
856
|
+
showWordLimit: boolean;
|
|
857
|
+
colon: boolean;
|
|
858
|
+
}> & Omit<Readonly<import('vue').ExtractPropTypes<{
|
|
859
|
+
tag: {
|
|
860
|
+
type: import('vue').PropType<keyof HTMLElementTagNameMap>;
|
|
861
|
+
default: keyof HTMLElementTagNameMap;
|
|
862
|
+
};
|
|
863
|
+
icon: StringConstructor;
|
|
864
|
+
size: import('vue').PropType<import('vant').CellSize>;
|
|
865
|
+
title: (NumberConstructor | StringConstructor)[];
|
|
866
|
+
value: (NumberConstructor | StringConstructor)[];
|
|
867
|
+
label: (NumberConstructor | StringConstructor)[];
|
|
868
|
+
center: BooleanConstructor;
|
|
869
|
+
isLink: BooleanConstructor;
|
|
870
|
+
border: {
|
|
871
|
+
type: BooleanConstructor;
|
|
872
|
+
default: true;
|
|
873
|
+
};
|
|
874
|
+
iconPrefix: StringConstructor;
|
|
875
|
+
valueClass: import('vue').PropType<unknown>;
|
|
876
|
+
labelClass: import('vue').PropType<unknown>;
|
|
877
|
+
titleClass: import('vue').PropType<unknown>;
|
|
878
|
+
titleStyle: import('vue').PropType<string | import('vue').CSSProperties>;
|
|
879
|
+
arrowDirection: import('vue').PropType<import('vant').CellArrowDirection>;
|
|
880
|
+
required: {
|
|
881
|
+
type: import('vue').PropType<boolean | "auto">;
|
|
882
|
+
default: null;
|
|
883
|
+
};
|
|
884
|
+
clickable: {
|
|
885
|
+
type: import('vue').PropType<boolean | null>;
|
|
886
|
+
default: null;
|
|
887
|
+
};
|
|
888
|
+
} & {
|
|
889
|
+
id: StringConstructor;
|
|
890
|
+
name: StringConstructor;
|
|
891
|
+
leftIcon: StringConstructor;
|
|
892
|
+
rightIcon: StringConstructor;
|
|
893
|
+
autofocus: BooleanConstructor;
|
|
894
|
+
clearable: BooleanConstructor;
|
|
895
|
+
maxlength: (NumberConstructor | StringConstructor)[];
|
|
896
|
+
max: NumberConstructor;
|
|
897
|
+
min: NumberConstructor;
|
|
898
|
+
formatter: import('vue').PropType<(value: string) => string>;
|
|
899
|
+
clearIcon: {
|
|
900
|
+
type: import('vue').PropType<string>;
|
|
901
|
+
default: string;
|
|
902
|
+
};
|
|
903
|
+
modelValue: {
|
|
904
|
+
type: (NumberConstructor | StringConstructor)[];
|
|
905
|
+
default: string;
|
|
906
|
+
};
|
|
907
|
+
inputAlign: import('vue').PropType<import('vant').FieldTextAlign>;
|
|
908
|
+
placeholder: StringConstructor;
|
|
909
|
+
autocomplete: StringConstructor;
|
|
910
|
+
autocapitalize: StringConstructor;
|
|
911
|
+
autocorrect: StringConstructor;
|
|
912
|
+
errorMessage: StringConstructor;
|
|
913
|
+
enterkeyhint: import('vue').PropType<import('vant').FieldEnterKeyHint>;
|
|
914
|
+
clearTrigger: {
|
|
915
|
+
type: import('vue').PropType<import('vant').FieldClearTrigger>;
|
|
916
|
+
default: import('vant').FieldClearTrigger;
|
|
917
|
+
};
|
|
918
|
+
formatTrigger: {
|
|
919
|
+
type: import('vue').PropType<import('vant').FieldFormatTrigger>;
|
|
920
|
+
default: import('vant').FieldFormatTrigger;
|
|
921
|
+
};
|
|
922
|
+
spellcheck: {
|
|
923
|
+
type: BooleanConstructor;
|
|
924
|
+
default: null;
|
|
925
|
+
};
|
|
926
|
+
error: {
|
|
927
|
+
type: BooleanConstructor;
|
|
928
|
+
default: null;
|
|
929
|
+
};
|
|
930
|
+
disabled: {
|
|
931
|
+
type: BooleanConstructor;
|
|
932
|
+
default: null;
|
|
933
|
+
};
|
|
934
|
+
readonly: {
|
|
935
|
+
type: BooleanConstructor;
|
|
936
|
+
default: null;
|
|
937
|
+
};
|
|
938
|
+
inputmode: import('vue').PropType<import('vue').HTMLAttributes["inputmode"]>;
|
|
939
|
+
} & {
|
|
940
|
+
rows: (NumberConstructor | StringConstructor)[];
|
|
941
|
+
type: {
|
|
942
|
+
type: import('vue').PropType<import('vant').FieldType>;
|
|
943
|
+
default: import('vant').FieldType;
|
|
944
|
+
};
|
|
945
|
+
rules: import('vue').PropType<import('vant').FieldRule[]>;
|
|
946
|
+
autosize: import('vue').PropType<boolean | import('vant').FieldAutosizeConfig>;
|
|
947
|
+
labelWidth: (NumberConstructor | StringConstructor)[];
|
|
948
|
+
labelClass: import('vue').PropType<unknown>;
|
|
949
|
+
labelAlign: import('vue').PropType<import('vant').FieldTextAlign>;
|
|
950
|
+
showWordLimit: BooleanConstructor;
|
|
951
|
+
errorMessageAlign: import('vue').PropType<import('vant').FieldTextAlign>;
|
|
952
|
+
colon: {
|
|
953
|
+
type: BooleanConstructor;
|
|
954
|
+
default: null;
|
|
955
|
+
};
|
|
956
|
+
}>> & Readonly<{
|
|
957
|
+
onFocus?: ((
|
|
958
|
+
/**
|
|
959
|
+
* @component BaseField
|
|
960
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
961
|
+
*
|
|
962
|
+
* ## 核心职责
|
|
963
|
+
*
|
|
964
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
965
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
966
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
967
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
968
|
+
*
|
|
969
|
+
* ## 组件解析优先级
|
|
970
|
+
*
|
|
971
|
+
* ```
|
|
972
|
+
* teleport 组件(ProForm 插槽注入)
|
|
973
|
+
* ↓ 未匹配
|
|
974
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
975
|
+
* ↓ 未匹配
|
|
976
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
977
|
+
* ↓ 未匹配
|
|
978
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
979
|
+
* ```
|
|
980
|
+
*
|
|
981
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
982
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
983
|
+
*
|
|
984
|
+
* @slot default - 默认插槽(透传给组件)
|
|
985
|
+
*/
|
|
986
|
+
...args: any[]) => any) | undefined;
|
|
987
|
+
onBlur?: ((
|
|
988
|
+
/**
|
|
989
|
+
* @component BaseField
|
|
990
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
991
|
+
*
|
|
992
|
+
* ## 核心职责
|
|
993
|
+
*
|
|
994
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
995
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
996
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
997
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
998
|
+
*
|
|
999
|
+
* ## 组件解析优先级
|
|
1000
|
+
*
|
|
1001
|
+
* ```
|
|
1002
|
+
* teleport 组件(ProForm 插槽注入)
|
|
1003
|
+
* ↓ 未匹配
|
|
1004
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
1005
|
+
* ↓ 未匹配
|
|
1006
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
1007
|
+
* ↓ 未匹配
|
|
1008
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
1009
|
+
* ```
|
|
1010
|
+
*
|
|
1011
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
1012
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
1013
|
+
*
|
|
1014
|
+
* @slot default - 默认插槽(透传给组件)
|
|
1015
|
+
*/
|
|
1016
|
+
...args: any[]) => any) | undefined;
|
|
1017
|
+
onKeypress?: ((
|
|
1018
|
+
/**
|
|
1019
|
+
* @component BaseField
|
|
1020
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
1021
|
+
*
|
|
1022
|
+
* ## 核心职责
|
|
1023
|
+
*
|
|
1024
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
1025
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
1026
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
1027
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
1028
|
+
*
|
|
1029
|
+
* ## 组件解析优先级
|
|
1030
|
+
*
|
|
1031
|
+
* ```
|
|
1032
|
+
* teleport 组件(ProForm 插槽注入)
|
|
1033
|
+
* ↓ 未匹配
|
|
1034
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
1035
|
+
* ↓ 未匹配
|
|
1036
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
1037
|
+
* ↓ 未匹配
|
|
1038
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
1039
|
+
* ```
|
|
1040
|
+
*
|
|
1041
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
1042
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
1043
|
+
*
|
|
1044
|
+
* @slot default - 默认插槽(透传给组件)
|
|
1045
|
+
*/
|
|
1046
|
+
...args: any[]) => any) | undefined;
|
|
1047
|
+
onClear?: ((
|
|
1048
|
+
/**
|
|
1049
|
+
* @component BaseField
|
|
1050
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
1051
|
+
*
|
|
1052
|
+
* ## 核心职责
|
|
1053
|
+
*
|
|
1054
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
1055
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
1056
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
1057
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
1058
|
+
*
|
|
1059
|
+
* ## 组件解析优先级
|
|
1060
|
+
*
|
|
1061
|
+
* ```
|
|
1062
|
+
* teleport 组件(ProForm 插槽注入)
|
|
1063
|
+
* ↓ 未匹配
|
|
1064
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
1065
|
+
* ↓ 未匹配
|
|
1066
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
1067
|
+
* ↓ 未匹配
|
|
1068
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
1069
|
+
* ```
|
|
1070
|
+
*
|
|
1071
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
1072
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
1073
|
+
*
|
|
1074
|
+
* @slot default - 默认插槽(透传给组件)
|
|
1075
|
+
*/
|
|
1076
|
+
...args: any[]) => any) | undefined;
|
|
1077
|
+
onClickInput?: ((
|
|
1078
|
+
/**
|
|
1079
|
+
* @component BaseField
|
|
1080
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
1081
|
+
*
|
|
1082
|
+
* ## 核心职责
|
|
1083
|
+
*
|
|
1084
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
1085
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
1086
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
1087
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
1088
|
+
*
|
|
1089
|
+
* ## 组件解析优先级
|
|
1090
|
+
*
|
|
1091
|
+
* ```
|
|
1092
|
+
* teleport 组件(ProForm 插槽注入)
|
|
1093
|
+
* ↓ 未匹配
|
|
1094
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
1095
|
+
* ↓ 未匹配
|
|
1096
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
1097
|
+
* ↓ 未匹配
|
|
1098
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
1099
|
+
* ```
|
|
1100
|
+
*
|
|
1101
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
1102
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
1103
|
+
*
|
|
1104
|
+
* @slot default - 默认插槽(透传给组件)
|
|
1105
|
+
*/
|
|
1106
|
+
...args: any[]) => any) | undefined;
|
|
1107
|
+
onEndValidate?: ((
|
|
1108
|
+
/**
|
|
1109
|
+
* @component BaseField
|
|
1110
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
1111
|
+
*
|
|
1112
|
+
* ## 核心职责
|
|
1113
|
+
*
|
|
1114
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
1115
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
1116
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
1117
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
1118
|
+
*
|
|
1119
|
+
* ## 组件解析优先级
|
|
1120
|
+
*
|
|
1121
|
+
* ```
|
|
1122
|
+
* teleport 组件(ProForm 插槽注入)
|
|
1123
|
+
* ↓ 未匹配
|
|
1124
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
1125
|
+
* ↓ 未匹配
|
|
1126
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
1127
|
+
* ↓ 未匹配
|
|
1128
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
1129
|
+
* ```
|
|
1130
|
+
*
|
|
1131
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
1132
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
1133
|
+
*
|
|
1134
|
+
* @slot default - 默认插槽(透传给组件)
|
|
1135
|
+
*/
|
|
1136
|
+
...args: any[]) => any) | undefined;
|
|
1137
|
+
onStartValidate?: ((
|
|
1138
|
+
/**
|
|
1139
|
+
* @component BaseField
|
|
1140
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
1141
|
+
*
|
|
1142
|
+
* ## 核心职责
|
|
1143
|
+
*
|
|
1144
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
1145
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
1146
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
1147
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
1148
|
+
*
|
|
1149
|
+
* ## 组件解析优先级
|
|
1150
|
+
*
|
|
1151
|
+
* ```
|
|
1152
|
+
* teleport 组件(ProForm 插槽注入)
|
|
1153
|
+
* ↓ 未匹配
|
|
1154
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
1155
|
+
* ↓ 未匹配
|
|
1156
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
1157
|
+
* ↓ 未匹配
|
|
1158
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
1159
|
+
* ```
|
|
1160
|
+
*
|
|
1161
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
1162
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
1163
|
+
*
|
|
1164
|
+
* @slot default - 默认插槽(透传给组件)
|
|
1165
|
+
*/
|
|
1166
|
+
...args: any[]) => any) | undefined;
|
|
1167
|
+
onClickLeftIcon?: ((
|
|
1168
|
+
/**
|
|
1169
|
+
* @component BaseField
|
|
1170
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
1171
|
+
*
|
|
1172
|
+
* ## 核心职责
|
|
1173
|
+
*
|
|
1174
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
1175
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
1176
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
1177
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
1178
|
+
*
|
|
1179
|
+
* ## 组件解析优先级
|
|
1180
|
+
*
|
|
1181
|
+
* ```
|
|
1182
|
+
* teleport 组件(ProForm 插槽注入)
|
|
1183
|
+
* ↓ 未匹配
|
|
1184
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
1185
|
+
* ↓ 未匹配
|
|
1186
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
1187
|
+
* ↓ 未匹配
|
|
1188
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
1189
|
+
* ```
|
|
1190
|
+
*
|
|
1191
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
1192
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
1193
|
+
*
|
|
1194
|
+
* @slot default - 默认插槽(透传给组件)
|
|
1195
|
+
*/
|
|
1196
|
+
...args: any[]) => any) | undefined;
|
|
1197
|
+
onClickRightIcon?: ((
|
|
1198
|
+
/**
|
|
1199
|
+
* @component BaseField
|
|
1200
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
1201
|
+
*
|
|
1202
|
+
* ## 核心职责
|
|
1203
|
+
*
|
|
1204
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
1205
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
1206
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
1207
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
1208
|
+
*
|
|
1209
|
+
* ## 组件解析优先级
|
|
1210
|
+
*
|
|
1211
|
+
* ```
|
|
1212
|
+
* teleport 组件(ProForm 插槽注入)
|
|
1213
|
+
* ↓ 未匹配
|
|
1214
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
1215
|
+
* ↓ 未匹配
|
|
1216
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
1217
|
+
* ↓ 未匹配
|
|
1218
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
1219
|
+
* ```
|
|
1220
|
+
*
|
|
1221
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
1222
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
1223
|
+
*
|
|
1224
|
+
* @slot default - 默认插槽(透传给组件)
|
|
1225
|
+
*/
|
|
1226
|
+
...args: any[]) => any) | undefined;
|
|
1227
|
+
"onUpdate:modelValue"?: ((
|
|
1228
|
+
/**
|
|
1229
|
+
* @component BaseField
|
|
1230
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
1231
|
+
*
|
|
1232
|
+
* ## 核心职责
|
|
1233
|
+
*
|
|
1234
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
1235
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
1236
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
1237
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
1238
|
+
*
|
|
1239
|
+
* ## 组件解析优先级
|
|
1240
|
+
*
|
|
1241
|
+
* ```
|
|
1242
|
+
* teleport 组件(ProForm 插槽注入)
|
|
1243
|
+
* ↓ 未匹配
|
|
1244
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
1245
|
+
* ↓ 未匹配
|
|
1246
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
1247
|
+
* ↓ 未匹配
|
|
1248
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
1249
|
+
* ```
|
|
1250
|
+
*
|
|
1251
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
1252
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
1253
|
+
*
|
|
1254
|
+
* @slot default - 默认插槽(透传给组件)
|
|
1255
|
+
*/
|
|
1256
|
+
...args: any[]) => any) | undefined;
|
|
1257
|
+
}>, "tag" | "center" | "isLink" | "border" | "required" | "clickable" | "autofocus" | "clearable" | "clearIcon" | "modelValue" | "clearTrigger" | "formatTrigger" | "spellcheck" | "error" | "disabled" | "readonly" | "type" | "showWordLimit" | "colon"> & {} & {} & import('vue').ComponentCustomProperties & {} & {
|
|
1258
|
+
$props: {
|
|
1259
|
+
onClick
|
|
1260
|
+
/**
|
|
1261
|
+
* @component BaseField
|
|
1262
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
1263
|
+
*
|
|
1264
|
+
* ## 核心职责
|
|
1265
|
+
*
|
|
1266
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
1267
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
1268
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
1269
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
1270
|
+
*
|
|
1271
|
+
* ## 组件解析优先级
|
|
1272
|
+
*
|
|
1273
|
+
* ```
|
|
1274
|
+
* teleport 组件(ProForm 插槽注入)
|
|
1275
|
+
* ↓ 未匹配
|
|
1276
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
1277
|
+
* ↓ 未匹配
|
|
1278
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
1279
|
+
* ↓ 未匹配
|
|
1280
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
1281
|
+
* ```
|
|
1282
|
+
*
|
|
1283
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
1284
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
1285
|
+
*
|
|
1286
|
+
* @slot default - 默认插槽(透传给组件)
|
|
1287
|
+
*/
|
|
1288
|
+
?: (
|
|
1289
|
+
/**
|
|
1290
|
+
* @component BaseField
|
|
1291
|
+
* @description 字段级渲染组件,负责将 field 配置渲染为实际的输入组件
|
|
1292
|
+
*
|
|
1293
|
+
* ## 核心职责
|
|
1294
|
+
*
|
|
1295
|
+
* 1. **组件解析**:按优先级解析要渲染的组件(teleport 插槽 > 自定义组件 > 内置组件映射 > 原始值)
|
|
1296
|
+
* 2. **v-model 双向绑定**:通过 computed getter/setter 将组件值与 formData 的深层路径绑定
|
|
1297
|
+
* 3. **valueFormatter 处理**:支持 get/set 格式化函数,用于数据转换(如日期格式化)
|
|
1298
|
+
* 4. **属性合并**:将注入的默认 props、组件传入的 attrs 合并为最终属性
|
|
1299
|
+
*
|
|
1300
|
+
* ## 组件解析优先级
|
|
1301
|
+
*
|
|
1302
|
+
* ```
|
|
1303
|
+
* teleport 组件(ProForm 插槽注入)
|
|
1304
|
+
* ↓ 未匹配
|
|
1305
|
+
* 自定义组件(ProComponentProvider 的 componentMap)
|
|
1306
|
+
* ↓ 未匹配
|
|
1307
|
+
* 内置组件映射(componentMap: input → Input, select → Select ...)
|
|
1308
|
+
* ↓ 未匹配
|
|
1309
|
+
* 原始 component 值(可能是字符串或 Vue 组件对象)
|
|
1310
|
+
* ```
|
|
1311
|
+
*
|
|
1312
|
+
* @param {string | Component} [component] - 组件名或组件对象
|
|
1313
|
+
* @param {string} [path] - 字段路径,用于绑定表单数据
|
|
1314
|
+
*
|
|
1315
|
+
* @slot default - 默认插槽(透传给组件)
|
|
1316
|
+
*/
|
|
1317
|
+
...args: any[]) => void;
|
|
1318
|
+
};
|
|
1319
|
+
}) | null;
|
|
1320
|
+
componentRef: unknown;
|
|
1321
|
+
}, any>;
|
|
1322
|
+
export default _default;
|
|
1323
|
+
//# sourceMappingURL=index.vue.d.ts.map
|