diff --git a/packages/form/src/containers/Table.vue b/packages/form/src/containers/Table.vue index 7314c0ff..494965ea 100644 --- a/packages/form/src/containers/Table.vue +++ b/packages/form/src/containers/Table.vue @@ -476,7 +476,7 @@ export default defineComponent({ } emit('select', selection, row); if (typeof props.config.onSelect === 'function') { - props.config.onSelect(mForm, { selection, row }); + props.config.onSelect(mForm, { selection, row, config: props.config }); } }, diff --git a/packages/form/src/containers/Tabs.vue b/packages/form/src/containers/Tabs.vue index 01972015..dba7cb88 100644 --- a/packages/form/src/containers/Tabs.vue +++ b/packages/form/src/containers/Tabs.vue @@ -59,12 +59,12 @@ const tabClickHandler = (mForm: FormState | undefined, tab: any, props: any) => tab.name = tab.paneName; if (typeof config.onTabClick === 'function') { - config.onTabClick(mForm, tab, { model, formValue: mForm?.values, prop }); + config.onTabClick(mForm, tab, { model, formValue: mForm?.values, prop, config }); } const tabConfig = config.items.find((item: TabPaneConfig) => tab.name === item.status); if (tabConfig && typeof tabConfig.onTabClick === 'function') { - tabConfig.onTabClick(mForm, tab, { model, formValue: mForm?.values, prop }); + tabConfig.onTabClick(mForm, tab, { model, formValue: mForm?.values, prop, config }); } }; diff --git a/packages/form/src/schema.ts b/packages/form/src/schema.ts index 84066797..54757f10 100644 --- a/packages/form/src/schema.ts +++ b/packages/form/src/schema.ts @@ -547,6 +547,7 @@ export interface ColumnConfig extends FormItem, ContainerCommonConfig { label: string; width: string | number; sortable: boolean; + [key: string]: any; } /**