IDesignPortal interface
组件树操作契约。
供两端共享: - main 端 EditorDesignPortal(真实执行端)实现它 - worker 端的具体协议实现(如 WorkerPortal)实现它
约定: - 无 bindEvent,事件分发器 eventDispatcher 作为 create/update 的参数传入,由实现方保存。 - updateComponent 会真正更新 eventDispatcher(每次 update 携带最新回调)。 - 泛型绑定 ComponentPropsMap:进程内调用获得强类型;跨线程消息边界用 as any。
签名
typescript
export interface IDesignPortal<T extends keyof ComponentPropsMap = keyof ComponentPropsMap>1
属性
属性名 | 修饰符 | 类型 | 描述 |
|---|---|---|---|
(handle: string, type: T, props: ComponentPropsMap[T], eventDispatcher: (ev: any) => void, parent?: string) => void | |||
(handle: string) => void | |||
(handle: string, type: T, props: ComponentPropsMap[T], eventDispatcher: (ev: any) => void) => void |