diff --git a/packages/designer/src/designer/setting/utils.ts b/packages/designer/src/designer/setting/utils.ts index 4bbe8e299..ef394deba 100644 --- a/packages/designer/src/designer/setting/utils.ts +++ b/packages/designer/src/designer/setting/utils.ts @@ -1,7 +1,7 @@ // all this file for polyfill vision logic import { isValidElement } from 'react'; -import { isSetterConfig } from '@ali/lowcode-types'; +import { isSetterConfig, isDynamicSetter } from '@ali/lowcode-types'; import { getSetter } from '@ali/lowcode-editor-core'; function getHotterFromSetter(setter) { @@ -55,6 +55,9 @@ export class Transducer { if (typeof setter === 'string') { setter = getSetter(setter)?.component; } + if (isDynamicSetter(setter)) { + setter = setter.call(context, context); + } this.setterTransducer = combineTransducer(getTransducerFromSetter(setter), getHotterFromSetter(setter), context); this.context = context;