diff --git a/packages/designer/src/builtin-simulator/host.ts b/packages/designer/src/builtin-simulator/host.ts index 706537d19..61f9dafe1 100644 --- a/packages/designer/src/builtin-simulator/host.ts +++ b/packages/designer/src/builtin-simulator/host.ts @@ -302,6 +302,11 @@ export class BuiltinSimulatorHost implements ISimulatorHost { diff --git a/packages/designer/src/document/node/node.ts b/packages/designer/src/document/node/node.ts index f34426092..f7ef3fe0e 100644 --- a/packages/designer/src/document/node/node.ts +++ b/packages/designer/src/document/node/node.ts @@ -653,6 +653,16 @@ export class Node { slotNode.internalSetParent(this as ParentalNode, true); this._slots.push(slotNode); } + /** + * 当前node对应组件是否已注册可用 + */ + isValidComponent() { + const allComponents = this.document?.designer?.componentsMap; + if (allComponents && allComponents[this.componentName]) { + return true; + } + return false; + } /** * 删除一个节点 @@ -702,6 +712,7 @@ export class Node { getComponentName() { return this.componentName; } + insertBefore(node: Node, ref?: Node, useMutator = true) { this.children?.insert(node, ref ? ref.index : null, useMutator); } diff --git a/packages/react-renderer/src/engine/index.jsx b/packages/react-renderer/src/engine/index.jsx index 7afef11c6..868d266a7 100644 --- a/packages/react-renderer/src/engine/index.jsx +++ b/packages/react-renderer/src/engine/index.jsx @@ -36,8 +36,18 @@ class FaultComponent extends PureComponent { class NotFoundComponent extends PureComponent { render() { - console.error('component not found', this.props); - return
; + console.error('component not found:', this.props); + const { _componentName: componentName } = this.props; + return
组件 {componentName} 无视图,请打开控制台排查
; } }