diff --git a/packages/designer/src/designer/designer.ts b/packages/designer/src/designer/designer.ts index 25fc4e636..774e5c14a 100644 --- a/packages/designer/src/designer/designer.ts +++ b/packages/designer/src/designer/designer.ts @@ -459,7 +459,7 @@ export class Designer { private _lostComponentMetasMap = new Map(); - private buildComponentMetasMap(metas: ComponentMetadata[]) { + buildComponentMetasMap(metas: ComponentMetadata[]) { metas.forEach((data) => this.createComponentMeta(data)); } diff --git a/packages/engine/src/engine-core.ts b/packages/engine/src/engine-core.ts index a893700f4..46f792f3e 100644 --- a/packages/engine/src/engine-core.ts +++ b/packages/engine/src/engine-core.ts @@ -103,6 +103,19 @@ const getSelection = () => designer.currentDocument?.selection; engineConfig, }; +// 处理 editor.set('assets'),将组件元数据创建好 +plugins.register((ctx: ILowCodePluginContext) => { + return { + name: '___component_meta_parser___', + init() { + editor.onGot('assets', (assets: any) => { + const { components = [] } = assets; + designer.buildComponentMetasMap(components); + }); + }, + }; +}); + // 注册默认的 setters plugins.register((ctx: ILowCodePluginContext) => { return {