|
5 | 5 | <el-form-item |
6 | 6 | v-for="model of props.models" |
7 | 7 | :key="model.path" |
8 | | - :prop="`[${index}].${model.path}`" |
| 8 | + :prop="`[${String(index)}].${model.path}`" |
9 | 9 | :rules="model.rules" |
10 | 10 | :label="index === 0 && model.label ? model.label : ''" |
11 | 11 | class="mr-8" |
12 | 12 | style="flex: 1" |
13 | 13 | > |
14 | 14 | <el-select |
15 | 15 | v-if="!model?.hidden?.(element)" |
16 | | - v-model="element[model.path]" |
| 16 | + v-model="(element as Record<string, any>)[model.path]" |
17 | 17 | :placeholder="model.selectProps?.placeholder ?? $t('common.selectPlaceholder')" |
18 | 18 | :clearable=" |
19 | 19 | model.selectProps?.clearableFunction |
|
24 | 24 | remote |
25 | 25 | :remote-method="(query: any) => handleRemoteSearch(query, element, model)" |
26 | 26 | :filter-method="!model.selectProps?.remoteMethod ? (query: any) => filterLocalOptions(query, element, model) : undefined" |
27 | | - :loading="loadingStates[`${index}-${model.path}`]" |
| 27 | + :loading="loadingStates[`${String(index)}-${model.path}`]" |
28 | 28 | multiple |
29 | 29 | :reserve-keyword="false" |
30 | 30 | style="width: 100%" |
|
48 | 48 | <!-- 删除按钮 --> |
49 | 49 | <el-button |
50 | 50 | :disabled=" |
51 | | - (props.keepOneLine && form.length === 1) || props.deleteButtonDisabled?.(element) |
| 51 | + (props.keepOneLine && (form as Record<string, any>[]).length === 1) || props.deleteButtonDisabled?.(element) |
52 | 52 | " |
53 | | - @click="handleDelete(index)" |
| 53 | + @click="handleDelete(index as number)" |
54 | 54 | text |
55 | 55 | :style="{ |
56 | 56 | 'margin-top': index === 0 && props.models.some((item) => item.label) ? '32px' : '2px', |
@@ -86,7 +86,7 @@ const props = withDefaults(defineProps<{ |
86 | 86 | const formRef = ref() |
87 | 87 | const formItem: Record<string, any> = {} |
88 | 88 | const form = defineModel<Record<string, any>[]>('form', { |
89 | | - default: [], |
| 89 | + default: () => [], |
90 | 90 | }) |
91 | 91 |
|
92 | 92 | const loadingStates = reactive<Record<string, boolean>>({}) |
|
0 commit comments