Skip to content

Commit ed4cc92

Browse files
committed
fix: ensure proper type handling and improve loading state management in MemberFormContent.vue
1 parent 02c7e11 commit ed4cc92

1 file changed

Lines changed: 6 additions & 6 deletions

File tree

ui/src/views/system/role/component/MemberFormContent.vue

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,15 @@
55
<el-form-item
66
v-for="model of props.models"
77
:key="model.path"
8-
:prop="`[${index}].${model.path}`"
8+
:prop="`[${String(index)}].${model.path}`"
99
:rules="model.rules"
1010
:label="index === 0 && model.label ? model.label : ''"
1111
class="mr-8"
1212
style="flex: 1"
1313
>
1414
<el-select
1515
v-if="!model?.hidden?.(element)"
16-
v-model="element[model.path]"
16+
v-model="(element as Record<string, any>)[model.path]"
1717
:placeholder="model.selectProps?.placeholder ?? $t('common.selectPlaceholder')"
1818
:clearable="
1919
model.selectProps?.clearableFunction
@@ -24,7 +24,7 @@
2424
remote
2525
:remote-method="(query: any) => handleRemoteSearch(query, element, model)"
2626
: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}`]"
2828
multiple
2929
:reserve-keyword="false"
3030
style="width: 100%"
@@ -48,9 +48,9 @@
4848
<!-- 删除按钮 -->
4949
<el-button
5050
:disabled="
51-
(props.keepOneLine && form.length === 1) || props.deleteButtonDisabled?.(element)
51+
(props.keepOneLine && (form as Record<string, any>[]).length === 1) || props.deleteButtonDisabled?.(element)
5252
"
53-
@click="handleDelete(index)"
53+
@click="handleDelete(index as number)"
5454
text
5555
:style="{
5656
'margin-top': index === 0 && props.models.some((item) => item.label) ? '32px' : '2px',
@@ -86,7 +86,7 @@ const props = withDefaults(defineProps<{
8686
const formRef = ref()
8787
const formItem: Record<string, any> = {}
8888
const form = defineModel<Record<string, any>[]>('form', {
89-
default: [],
89+
default: () => [],
9090
})
9191
9292
const loadingStates = reactive<Record<string, boolean>>({})

0 commit comments

Comments
 (0)