diff --git a/components/FormBuilder/FormItemsRenderer.d.ts b/components/FormBuilder/FormItemsRenderer.d.ts index cd31784..d1f2d0c 100644 --- a/components/FormBuilder/FormItemsRenderer.d.ts +++ b/components/FormBuilder/FormItemsRenderer.d.ts @@ -52,7 +52,7 @@ export interface FormListUniqueProps { /** 删除按钮的文本,默认 '删除' */ removeButtonText?: string; /** 表单配置项 */ - options: (field: FormListFieldData) => FormOption[]; + options: (field: FormListFieldData, index: number) => FormOption[]; /** 点击新增按钮时的默认值 */ addDefaultValue?: FormValues; /** 点击新增按钮时插入的索引位置 */ diff --git a/components/FormBuilder/FormItemsRenderer.js b/components/FormBuilder/FormItemsRenderer.js index 5d1641e..75932a1 100644 --- a/components/FormBuilder/FormItemsRenderer.js +++ b/components/FormBuilder/FormItemsRenderer.js @@ -223,9 +223,9 @@ const FormItemsRenderer = ({ }; // 获取 listOptions - const getListOptions = (listOptions, field) => { + const getListOptions = (listOptions, field, fieldIndex) => { return typeof listOptions === "function" - ? listOptions(field) + ? listOptions(field, fieldIndex) : (listOptions ?? []); }; @@ -452,7 +452,7 @@ const FormItemsRenderer = ({ {(fields, { add, remove }) => ( <> {fields.map((field, fieldIndex) => { - const listOptions = getListOptions(option.formListUniqueProps.options, field); + const listOptions = getListOptions(option.formListUniqueProps.options, field, fieldIndex); return ( {listOptions.map((listOption, listIndex) => {