diff --git a/packages/designer/src/document/document-model.ts b/packages/designer/src/document/document-model.ts index 2b00d5239..6b70dd407 100644 --- a/packages/designer/src/document/document-model.ts +++ b/packages/designer/src/document/document-model.ts @@ -520,7 +520,7 @@ export class DocumentModel { }; } - setRendererReady(renderer) { + setRendererReady(renderer: any) { this.emitter.emit('lowcode_engine_renderer_ready', renderer); } diff --git a/packages/designer/src/document/node/node.ts b/packages/designer/src/document/node/node.ts index 06891d433..6926d7547 100644 --- a/packages/designer/src/document/node/node.ts +++ b/packages/designer/src/document/node/node.ts @@ -157,17 +157,19 @@ export class Node { this.props = new Props(this, props, extras); this._children = new NodeChildren(this as ParentalNode, this.initialChildren(children)); this._children.interalInitParent(); - this.props.import(this.transformProps(props || {}), this.transformProps(extras || {})); + this.props.import(this.upgradeProps(this.initProps(props || {})), this.upgradeProps(extras || {})); this.setupAutoruns(); } this.settingEntry = this.document.designer.createSettingEntry([ this ]); } - private transformProps(props: any): any { - // FIXME! support PropsList + private initProps(props: any): any { return this.document.designer.transformProps(props, this, TransformStage.Init); } + private upgradeProps(props: any): any { + return this.document.designer.transformProps(props, this, TransformStage.Upgrade); + } private autoruns?: Array<() => void>; private setupAutoruns() { @@ -545,7 +547,7 @@ export class Node { const addon = this._addons[key]; if (addon) { if (addon.isProp) { - (props as any)[key] = addon.exportData(); + (props as any)[getConvertedExtraKey(key)] = addon.exportData(); } else { _extras_[key] = addon.exportData(); } diff --git a/packages/editor-preset-vision/src/editor.ts b/packages/editor-preset-vision/src/editor.ts index d8669460a..efc3accb5 100644 --- a/packages/editor-preset-vision/src/editor.ts +++ b/packages/editor-preset-vision/src/editor.ts @@ -74,14 +74,16 @@ function upgradePropsReducer(props: any) { return newProps; } // 升级 Props -designer.addPropsReducer(upgradePropsReducer, TransformStage.Init); +designer.addPropsReducer(upgradePropsReducer, TransformStage.Upgrade); // 节点 props 初始化 designer.addPropsReducer((props, node) => { // run initials const initials = node.componentMeta.getMetadata().experimental?.initials; if (initials) { - const newProps: any = {}; + const newProps: any = { + ...props, + }; initials.forEach((item) => { // FIXME! this implements SettingTarget try { diff --git a/packages/types/src/transform-stage.ts b/packages/types/src/transform-stage.ts index e415d44ae..f3b968c08 100644 --- a/packages/types/src/transform-stage.ts +++ b/packages/types/src/transform-stage.ts @@ -4,4 +4,5 @@ export enum TransformStage { Save = 3, Clone = 4, Init = 5, + Upgrade = 6, }