lw-cdp-ui 1.1.55 → 1.1.57
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/dist/components/lwFlow/index.vue +7 -1
- package/dist/components/lwFlow/nodes/custom.js +11 -3
- package/dist/components/lwFlow/nodes/et2lTable.js +17 -9
- package/dist/components/lwForm/index.vue +104 -96
- package/dist/components/lwFormMini/index.vue +65 -55
- package/dist/components/lwFormView/index.vue +34 -27
- package/dist/components/lwTableSelect/index.vue +1 -0
- package/dist/lw-cdp-ui.esm.js +4259 -4254
- package/dist/lw-cdp-ui.umd.js +18 -18
- package/dist/style.css +1 -1
- package/package.json +1 -1
|
@@ -458,7 +458,13 @@ export default {
|
|
|
458
458
|
let isHideHandle = false;
|
|
459
459
|
// 处理 hideHandle 字段逻辑
|
|
460
460
|
if (data && typeof item?.hideHandle === 'string') {
|
|
461
|
-
|
|
461
|
+
try {
|
|
462
|
+
const hideHandleFunc = new Function("data", `return ${item.hideHandle.replace(/\$/g, "data")}`);
|
|
463
|
+
isHideHandle = hideHandleFunc(data);
|
|
464
|
+
} catch (error) {
|
|
465
|
+
console.error('遇到错误时返回默认值:', error)
|
|
466
|
+
isHideHandle = false; // 遇到错误时默认值
|
|
467
|
+
}
|
|
462
468
|
} else if (data && typeof item?.hideHandle === 'boolean') {
|
|
463
469
|
isHideHandle = item.hideHandle;
|
|
464
470
|
}
|
|
@@ -6,15 +6,23 @@ import nodeDatas from '../nodesData/index.js'
|
|
|
6
6
|
export default function registerCustom(lf, node, state) {
|
|
7
7
|
// 是否显示
|
|
8
8
|
function hideHandle(item, data) {
|
|
9
|
-
if (Object.keys(data).length
|
|
9
|
+
if (Object.keys(data).length === 0) return false
|
|
10
|
+
|
|
10
11
|
if (typeof item.hideHandle === 'string') {
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
try {
|
|
13
|
+
const hideHandleFunc = new Function('data', `return ${item.hideHandle.replace(/\$/g, 'data')}`)
|
|
14
|
+
return hideHandleFunc(data)
|
|
15
|
+
} catch (error) {
|
|
16
|
+
console.error('遇到错误时返回默认值:', error)
|
|
17
|
+
return false // 遇到错误时返回默认值
|
|
18
|
+
}
|
|
13
19
|
} else if (typeof item.hideHandle === 'boolean') {
|
|
14
20
|
return item.hideHandle
|
|
15
21
|
}
|
|
22
|
+
|
|
16
23
|
return false
|
|
17
24
|
}
|
|
25
|
+
|
|
18
26
|
/**
|
|
19
27
|
* 解析模板字符串,将其中的占位符替换为对应的数据值。
|
|
20
28
|
* 占位符格式为 ${key},其中 key 可以是嵌套的对象属性。
|
|
@@ -6,15 +6,23 @@ import nodeDatas from '../nodesData/index.js'
|
|
|
6
6
|
export default function registerEt2l(lf, node) {
|
|
7
7
|
// 是否显示
|
|
8
8
|
function hideHandle(item, data) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
9
|
+
if (Object.keys(data).length === 0) return false;
|
|
10
|
+
|
|
11
|
+
if (typeof item.hideHandle === 'string') {
|
|
12
|
+
try {
|
|
13
|
+
const hideHandleFunc = new Function("data", `return ${item.hideHandle.replace(/\$/g, 'data')}`);
|
|
14
|
+
return hideHandleFunc(data);
|
|
15
|
+
} catch (error) {
|
|
16
|
+
console.error("遇到错误时返回默认值:", error);
|
|
17
|
+
return false; // 遇到错误时返回默认值
|
|
18
|
+
}
|
|
19
|
+
} else if (typeof item.hideHandle === 'boolean') {
|
|
20
|
+
return item.hideHandle;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
|
|
18
26
|
/**
|
|
19
27
|
* 解析模板字符串,将其中的占位符替换为对应的数据值。
|
|
20
28
|
* 占位符格式为 ${key},其中 key 可以是嵌套的对象属性。
|
|
@@ -39,37 +39,38 @@
|
|
|
39
39
|
<!-- input -->
|
|
40
40
|
<template v-if="item.component == 'input'">
|
|
41
41
|
<template v-if="item?.options?.name">
|
|
42
|
-
<el-input v-model="form[item.name][item
|
|
43
|
-
:placeholder="item
|
|
42
|
+
<el-input v-model="form[item.name][item?.options.name]"
|
|
43
|
+
:placeholder="item?.options?.placeholder"
|
|
44
44
|
clearable
|
|
45
|
-
:type="item
|
|
46
|
-
:disabled="item
|
|
47
|
-
:
|
|
45
|
+
:type="item?.options.type"
|
|
46
|
+
:disabled="item?.options?.disabled"
|
|
47
|
+
:autocomplete="item?.options?.autocomplete || 'off'"
|
|
48
|
+
:maxlength="item?.options.maxlength"
|
|
48
49
|
show-word-limit>
|
|
49
|
-
<template v-if="item
|
|
50
|
-
#prepend>{{ item
|
|
51
|
-
<template v-if="item
|
|
52
|
-
#append>{{ item
|
|
50
|
+
<template v-if="item?.options.prepend"
|
|
51
|
+
#prepend>{{ item?.options.prepend }}</template>
|
|
52
|
+
<template v-if="item?.options.append"
|
|
53
|
+
#append>{{ item?.options.append }}</template>
|
|
53
54
|
</el-input>
|
|
54
55
|
</template>
|
|
55
56
|
<template v-else>
|
|
56
57
|
<el-input v-model="form[item.name]"
|
|
57
|
-
:placeholder="item
|
|
58
|
+
:placeholder="item?.options?.placeholder"
|
|
58
59
|
clearable
|
|
59
|
-
:type="item
|
|
60
|
-
:disabled="item
|
|
61
|
-
:maxlength="item
|
|
60
|
+
:type="item?.options.type"
|
|
61
|
+
:disabled="item?.options?.disabled"
|
|
62
|
+
:maxlength="item?.options.maxlength"
|
|
62
63
|
show-word-limit>
|
|
63
|
-
<template v-if="item
|
|
64
|
-
#prepend>{{ item
|
|
65
|
-
<template v-if="item
|
|
66
|
-
#append>{{ item
|
|
64
|
+
<template v-if="item?.options.prepend"
|
|
65
|
+
#prepend>{{ item?.options.prepend }}</template>
|
|
66
|
+
<template v-if="item?.options.append"
|
|
67
|
+
#append>{{ item?.options.append }}</template>
|
|
67
68
|
</el-input>
|
|
68
69
|
</template>
|
|
69
70
|
</template>
|
|
70
71
|
<!-- upload -->
|
|
71
72
|
<template v-else-if="item.component == 'upload'">
|
|
72
|
-
<template v-for="(_item, _index) in item
|
|
73
|
+
<template v-for="(_item, _index) in item?.options.items"
|
|
73
74
|
:key="_index">
|
|
74
75
|
<template v-if="item.name">
|
|
75
76
|
<div style="margin-right: 5px;">
|
|
@@ -109,20 +110,20 @@
|
|
|
109
110
|
<template v-if="item.name">
|
|
110
111
|
<el-checkbox v-model="form[item.name][_item.name]"
|
|
111
112
|
:label="_item.label"
|
|
112
|
-
v-for="(_item, _index) in item
|
|
113
|
+
v-for="(_item, _index) in item?.options.items"
|
|
113
114
|
:key="_index"></el-checkbox>
|
|
114
115
|
</template>
|
|
115
116
|
<template v-else>
|
|
116
117
|
<el-checkbox v-model="form[_item.name]"
|
|
117
118
|
:label="_item.label"
|
|
118
|
-
v-for="(_item, _index) in item
|
|
119
|
+
v-for="(_item, _index) in item?.options.items"
|
|
119
120
|
:key="_index"></el-checkbox>
|
|
120
121
|
</template>
|
|
121
122
|
</template>
|
|
122
123
|
<!-- checkboxGroup -->
|
|
123
124
|
<template v-else-if="item.component == 'checkboxGroup'">
|
|
124
125
|
<el-checkbox-group v-model="form[item.name]">
|
|
125
|
-
<el-checkbox v-for="_item in item
|
|
126
|
+
<el-checkbox v-for="_item in item?.options.items"
|
|
126
127
|
:key="_item.value"
|
|
127
128
|
:label="_item.value">{{ _item.label }}</el-checkbox>
|
|
128
129
|
</el-checkbox-group>
|
|
@@ -131,31 +132,31 @@
|
|
|
131
132
|
<!-- switch -->
|
|
132
133
|
<template v-else-if="item.component == 'switch'">
|
|
133
134
|
<template v-if="item?.options?.name">
|
|
134
|
-
<el-switch v-model="form[item.name][item
|
|
135
|
+
<el-switch v-model="form[item.name][item?.options.name]"
|
|
135
136
|
inline-prompt
|
|
136
|
-
:active-text="item
|
|
137
|
-
:inactive-text="item
|
|
137
|
+
:active-text="item?.options?.activeText"
|
|
138
|
+
:inactive-text="item?.options?.inactiveText" />
|
|
138
139
|
</template>
|
|
139
140
|
<template v-else>
|
|
140
141
|
<el-switch v-model="form[item.name]"
|
|
141
142
|
inline-prompt
|
|
142
|
-
:active-text="item
|
|
143
|
-
:inactive-text="item
|
|
143
|
+
:active-text="item?.options?.activeText"
|
|
144
|
+
:inactive-text="item?.options?.inactiveText" />
|
|
144
145
|
</template>
|
|
145
146
|
</template>
|
|
146
147
|
<!-- select -->
|
|
147
148
|
<template v-else-if="item.component == 'select'">
|
|
148
149
|
<template v-if="item?.options?.name">
|
|
149
|
-
<el-select v-model="form[item.name][item
|
|
150
|
-
:multiple="item
|
|
151
|
-
:allow-create="item
|
|
150
|
+
<el-select v-model="form[item.name][item?.options.name]"
|
|
151
|
+
:multiple="item?.options?.multiple"
|
|
152
|
+
:allow-create="item?.options?.allowCreate"
|
|
152
153
|
default-first-option
|
|
153
|
-
:placeholder="item
|
|
154
|
-
:clearable="item
|
|
155
|
-
:disabled="item
|
|
154
|
+
:placeholder="item?.options?.placeholder || ''"
|
|
155
|
+
:clearable="item?.options?.clearable"
|
|
156
|
+
:disabled="item?.options?.disabled"
|
|
156
157
|
filterable
|
|
157
158
|
style="width: 100%;">
|
|
158
|
-
<el-option v-for="option in item
|
|
159
|
+
<el-option v-for="option in item?.options.items"
|
|
159
160
|
:key="option.value"
|
|
160
161
|
:label="option.label"
|
|
161
162
|
:value="option.value"></el-option>
|
|
@@ -163,15 +164,15 @@
|
|
|
163
164
|
</template>
|
|
164
165
|
<template v-else>
|
|
165
166
|
<el-select v-model="form[item.name]"
|
|
166
|
-
:multiple="item
|
|
167
|
-
:allow-create="item
|
|
167
|
+
:multiple="item?.options?.multiple"
|
|
168
|
+
:allow-create="item?.options?.allowCreate"
|
|
168
169
|
default-first-option
|
|
169
|
-
:placeholder="item
|
|
170
|
-
:clearable="item
|
|
171
|
-
:disabled="item
|
|
170
|
+
:placeholder="item?.options?.placeholder || ''"
|
|
171
|
+
:clearable="item?.options?.clearable"
|
|
172
|
+
:disabled="item?.options?.disabled"
|
|
172
173
|
filterable
|
|
173
174
|
style="width: 100%;">
|
|
174
|
-
<el-option v-for="option in item
|
|
175
|
+
<el-option v-for="option in item?.options.items"
|
|
175
176
|
:key="option.value"
|
|
176
177
|
:label="option.label"
|
|
177
178
|
:value="option.value"></el-option>
|
|
@@ -182,15 +183,15 @@
|
|
|
182
183
|
<!-- cascader -->
|
|
183
184
|
<template v-else-if="item.component == 'cascader'">
|
|
184
185
|
<template v-if="item?.options?.name">
|
|
185
|
-
<el-cascader v-model="form[item.name][item
|
|
186
|
+
<el-cascader v-model="form[item.name][item?.options.name]"
|
|
186
187
|
style="width: 100%;"
|
|
187
|
-
:options="item
|
|
188
|
+
:options="item?.options.items"
|
|
188
189
|
clearable></el-cascader>
|
|
189
190
|
</template>
|
|
190
191
|
<template v-else>
|
|
191
192
|
<el-cascader v-model="form[item.name]"
|
|
192
193
|
style="width: 100%;"
|
|
193
|
-
:options="item
|
|
194
|
+
:options="item?.options.items"
|
|
194
195
|
clearable></el-cascader>
|
|
195
196
|
</template>
|
|
196
197
|
|
|
@@ -198,40 +199,40 @@
|
|
|
198
199
|
<!-- date -->
|
|
199
200
|
<template v-else-if="item.component == 'date'">
|
|
200
201
|
<template v-if="item?.options?.name">
|
|
201
|
-
<el-date-picker v-model="form[item.name][item
|
|
202
|
+
<el-date-picker v-model="form[item.name][item?.options.name]"
|
|
202
203
|
style="width: 100%;"
|
|
203
|
-
:type="item
|
|
204
|
-
:start-placeholder="item
|
|
205
|
-
:end-placeholder="item
|
|
206
|
-
:shortcuts="item
|
|
207
|
-
:disabled-date="item
|
|
208
|
-
:default-time="item
|
|
209
|
-
:disabled="item
|
|
210
|
-
:value-format="item
|
|
211
|
-
:format="item
|
|
212
|
-
:placeholder="item
|
|
204
|
+
:type="item?.options.type"
|
|
205
|
+
:start-placeholder="item?.options.startPlaceholder"
|
|
206
|
+
:end-placeholder="item?.options.endPlaceholder"
|
|
207
|
+
:shortcuts="item?.options.shortcuts"
|
|
208
|
+
:disabled-date="item?.options?.disabledDate"
|
|
209
|
+
:default-time="item?.options.defaultTime"
|
|
210
|
+
:disabled="item?.options?.disabled"
|
|
211
|
+
:value-format="item?.options.valueFormat"
|
|
212
|
+
:format="item?.options.format"
|
|
213
|
+
:placeholder="item?.options.placeholder || '请选择'"></el-date-picker>
|
|
213
214
|
</template>
|
|
214
215
|
<template v-else>
|
|
215
216
|
<el-date-picker v-model="form[item.name]"
|
|
216
217
|
style="width: 100%;"
|
|
217
|
-
:type="item
|
|
218
|
-
:start-placeholder="item
|
|
219
|
-
:end-placeholder="item
|
|
220
|
-
:shortcuts="item
|
|
221
|
-
:disabled-date="item
|
|
222
|
-
:default-time="item
|
|
223
|
-
:disabled="item
|
|
224
|
-
:value-format="item
|
|
225
|
-
:format="item
|
|
226
|
-
:placeholder="item
|
|
218
|
+
:type="item?.options.type"
|
|
219
|
+
:start-placeholder="item?.options.startPlaceholder"
|
|
220
|
+
:end-placeholder="item?.options.endPlaceholder"
|
|
221
|
+
:shortcuts="item?.options.shortcuts"
|
|
222
|
+
:disabled-date="item?.options?.disabledDate"
|
|
223
|
+
:default-time="item?.options.defaultTime"
|
|
224
|
+
:disabled="item?.options?.disabled"
|
|
225
|
+
:value-format="item?.options.valueFormat"
|
|
226
|
+
:format="item?.options.format"
|
|
227
|
+
:placeholder="item?.options.placeholder || '请选择'"></el-date-picker>
|
|
227
228
|
</template>
|
|
228
229
|
|
|
229
230
|
</template>
|
|
230
231
|
<!-- number -->
|
|
231
232
|
<template v-else-if="item.component == 'number'">
|
|
232
233
|
<template v-if="item?.options?.name">
|
|
233
|
-
<el-input-number v-model="form[item.name][item
|
|
234
|
-
:disabled="item
|
|
234
|
+
<el-input-number v-model="form[item.name][item?.options.name]"
|
|
235
|
+
:disabled="item?.options?.disabled"
|
|
235
236
|
:min="item?.options?.min"
|
|
236
237
|
:max="item?.options?.max"
|
|
237
238
|
:step="item?.options?.step || 1"
|
|
@@ -240,13 +241,13 @@
|
|
|
240
241
|
:controls-position="item?.options?.controlsPosition || 'right'">
|
|
241
242
|
<template v-if="item?.options?.suffix"
|
|
242
243
|
#suffix>
|
|
243
|
-
<span>{{ item
|
|
244
|
+
<span>{{ item?.options.suffix }}</span>
|
|
244
245
|
</template>
|
|
245
246
|
</el-input-number>
|
|
246
247
|
</template>
|
|
247
248
|
<template v-else>
|
|
248
249
|
<el-input-number v-model="form[item.name]"
|
|
249
|
-
:disabled="item
|
|
250
|
+
:disabled="item?.options?.disabled"
|
|
250
251
|
:min="item?.options?.min"
|
|
251
252
|
:max="item?.options?.max"
|
|
252
253
|
:step="item?.options?.step || 1"
|
|
@@ -255,7 +256,7 @@
|
|
|
255
256
|
:controls-position="item?.options?.controlsPosition || 'right'">
|
|
256
257
|
<template v-if="item?.options?.suffix"
|
|
257
258
|
#suffix>
|
|
258
|
-
<span>{{ item
|
|
259
|
+
<span>{{ item?.options.suffix }}</span>
|
|
259
260
|
</template>
|
|
260
261
|
</el-input-number>
|
|
261
262
|
</template>
|
|
@@ -264,17 +265,17 @@
|
|
|
264
265
|
<!-- radio -->
|
|
265
266
|
<template v-else-if="item.component == 'radio'">
|
|
266
267
|
<template v-if="item?.options?.name">
|
|
267
|
-
<el-radio-group v-model="form[item.name][item
|
|
268
|
-
:disabled="item
|
|
269
|
-
<el-radio v-for="_item in item
|
|
268
|
+
<el-radio-group v-model="form[item.name][item?.options.name]"
|
|
269
|
+
:disabled="item?.options?.disabled">
|
|
270
|
+
<el-radio v-for="_item in item?.options.items"
|
|
270
271
|
:key="_item.value"
|
|
271
272
|
:value="_item.value">{{ _item.label }}</el-radio>
|
|
272
273
|
</el-radio-group>
|
|
273
274
|
</template>
|
|
274
275
|
<template v-else>
|
|
275
276
|
<el-radio-group v-model="form[item.name]"
|
|
276
|
-
:disabled="item
|
|
277
|
-
<el-radio v-for="_item in item
|
|
277
|
+
:disabled="item?.options?.disabled">
|
|
278
|
+
<el-radio v-for="_item in item?.options.items"
|
|
278
279
|
:key="_item.value"
|
|
279
280
|
:value="_item.value">{{ _item.label }}</el-radio>
|
|
280
281
|
</el-radio-group>
|
|
@@ -284,7 +285,8 @@
|
|
|
284
285
|
<!-- color -->
|
|
285
286
|
<template v-else-if="item.component == 'color'">
|
|
286
287
|
<template v-if="item?.options?.name">
|
|
287
|
-
<el-color-picker
|
|
288
|
+
<el-color-picker
|
|
289
|
+
v-model="form[item.name][item?.options.name]" />
|
|
288
290
|
</template>
|
|
289
291
|
<template v-else>
|
|
290
292
|
<el-color-picker v-model="form[item.name]" />
|
|
@@ -295,7 +297,7 @@
|
|
|
295
297
|
<template v-else-if="item.component == 'rate'">
|
|
296
298
|
<template v-if="item?.options?.name">
|
|
297
299
|
<el-rate style="margin-top: 6px;"
|
|
298
|
-
v-model="form[item.name][item
|
|
300
|
+
v-model="form[item.name][item?.options.name]"></el-rate>
|
|
299
301
|
</template>
|
|
300
302
|
<template v-else>
|
|
301
303
|
<el-rate style="margin-top: 6px;"
|
|
@@ -306,12 +308,12 @@
|
|
|
306
308
|
<!-- slider -->
|
|
307
309
|
<template v-else-if="item.component == 'slider'">
|
|
308
310
|
<template v-if="item?.options?.name">
|
|
309
|
-
<el-slider v-model="form[item.name][item
|
|
310
|
-
:marks="item
|
|
311
|
+
<el-slider v-model="form[item.name][item?.options.name]"
|
|
312
|
+
:marks="item?.options.marks"></el-slider>
|
|
311
313
|
</template>
|
|
312
314
|
<template v-else>
|
|
313
315
|
<el-slider v-model="form[item.name]"
|
|
314
|
-
:marks="item
|
|
316
|
+
:marks="item?.options.marks"></el-slider>
|
|
315
317
|
</template>
|
|
316
318
|
|
|
317
319
|
</template>
|
|
@@ -324,7 +326,7 @@
|
|
|
324
326
|
:key="tag"
|
|
325
327
|
closable
|
|
326
328
|
:disable-transitions="false"
|
|
327
|
-
@close="tagClose(tag, form[item.name][item
|
|
329
|
+
@close="tagClose(tag, form[item.name][item?.options.name])">
|
|
328
330
|
{{ tag }}
|
|
329
331
|
</el-tag>
|
|
330
332
|
|
|
@@ -458,7 +460,7 @@ export default {
|
|
|
458
460
|
return Object.keys(this.config).length > 0
|
|
459
461
|
},
|
|
460
462
|
hasValue() {
|
|
461
|
-
return
|
|
463
|
+
return Object.keys(this.modelValue).length > 0
|
|
462
464
|
},
|
|
463
465
|
|
|
464
466
|
},
|
|
@@ -481,12 +483,12 @@ export default {
|
|
|
481
483
|
if (item.component == 'checkbox' || item.component == 'upload') {
|
|
482
484
|
if (item.name) {
|
|
483
485
|
const value = {}
|
|
484
|
-
item
|
|
486
|
+
item?.options.items.forEach((option) => {
|
|
485
487
|
value[option.name] = option.value
|
|
486
488
|
})
|
|
487
489
|
this.form[item.name] = value
|
|
488
490
|
} else if (item?.options?.items) {
|
|
489
|
-
item
|
|
491
|
+
item?.options.items.forEach((option) => {
|
|
490
492
|
this.form[option.name] = option.value
|
|
491
493
|
})
|
|
492
494
|
}
|
|
@@ -538,23 +540,29 @@ export default {
|
|
|
538
540
|
//处理动态隐藏
|
|
539
541
|
hideHandle(item) {
|
|
540
542
|
if (typeof item.hideHandle === 'string') {
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
return exp
|
|
543
|
+
const func = new Function('form', `return ${item?.hideHandle.replace(/\$/g, "form")}`);
|
|
544
|
+
return func(this.form);
|
|
544
545
|
} else if (typeof item.hideHandle === 'boolean') {
|
|
545
546
|
return item.hideHandle
|
|
546
547
|
}
|
|
547
548
|
return false
|
|
548
549
|
},
|
|
549
|
-
|
|
550
|
+
// 处理动态必填
|
|
550
551
|
rulesHandle(item) {
|
|
551
552
|
if (item.requiredHandle) {
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
553
|
+
try {
|
|
554
|
+
const requiredHandleFunc = new Function("form", `return ${item.requiredHandle.replace(/\$/g, "form")}`);
|
|
555
|
+
const exp = requiredHandleFunc(this.form);
|
|
556
|
+
|
|
557
|
+
const requiredRule = item.rules.find(t => 'required' in t);
|
|
558
|
+
if (requiredRule) {
|
|
559
|
+
requiredRule.required = exp;
|
|
560
|
+
}
|
|
561
|
+
} catch (error) {
|
|
562
|
+
console.error("Error requiredHandle function:", error);
|
|
563
|
+
}
|
|
556
564
|
}
|
|
557
|
-
return item.rules
|
|
565
|
+
return item.rules;
|
|
558
566
|
},
|
|
559
567
|
//数据验证
|
|
560
568
|
validate(valid, obj) {
|
|
@@ -579,8 +587,8 @@ export default {
|
|
|
579
587
|
if (this.tagValue) {
|
|
580
588
|
if (item?.options?.name) {
|
|
581
589
|
row[item.name] = row[item.name] || {};
|
|
582
|
-
row[item.name][item
|
|
583
|
-
row[item.name][item
|
|
590
|
+
row[item.name][item?.options.name] = row[item.name][item?.options.name] || [];
|
|
591
|
+
row[item.name][item?.options.name].push(this.tagValue)
|
|
584
592
|
} else {
|
|
585
593
|
row[item.name] = row[item.name] || []
|
|
586
594
|
row[item.name].push(this.tagValue)
|
|
@@ -593,13 +601,13 @@ export default {
|
|
|
593
601
|
getPropName(item) {
|
|
594
602
|
if (item.component == 'checkbox' || item.component == 'upload') {
|
|
595
603
|
if (item.name) {
|
|
596
|
-
return `${item.name}.${item
|
|
604
|
+
return `${item.name}.${item?.options.items[0].name}`
|
|
597
605
|
} else {
|
|
598
|
-
return item
|
|
606
|
+
return item?.options.items[0].name
|
|
599
607
|
}
|
|
600
608
|
|
|
601
609
|
} else {
|
|
602
|
-
return item?.options?.name ? `${item.name}.${item
|
|
610
|
+
return item?.options?.name ? `${item.name}.${item?.options.name}` : item.name
|
|
603
611
|
}
|
|
604
612
|
}
|
|
605
613
|
}
|