import { Component } from 'react'; import classNames from 'classnames'; import { observer } from '@alilc/lowcode-editor-core'; import { ModalNodesManager } from '@alilc/lowcode-designer'; import TreeNode from '../tree-node'; import TreeTitle from './tree-title'; import TreeBranches from './tree-branches'; import { IconEyeClose } from '../icons/eye-close'; @observer class ModalTreeNodeView extends Component<{ treeNode: TreeNode }> { private modalNodesManager: ModalNodesManager; constructor(props: any) { super(props); // 模态管理对象 this.modalNodesManager = props.treeNode.document.modalNodesManager; } hideAllNodes() { this.modalNodesManager.hideModalNodes(); } render() { const { treeNode } = this.props; // 当指定了新的根节点时,要从原始的根节点去获取模态节点 const rootTreeNode = treeNode.tree.getTreeNode(treeNode.document.rootNode!); const modalNodes = rootTreeNode.children?.filter((item) => { return item.node.componentMeta.isModal; }); if (!modalNodes || modalNodes.length === 0) { return null; } const hasVisibleModalNode = !!this.modalNodesManager.getVisibleModalNode(); return (