在dom中的特定路径中创建aggrid单元格编辑器

问题描述 投票:0回答:1

我正在使用 Angular 16 和 AgGrid 30。

我希望单元格编辑器在不同的路径上创建,目前它在底部 div 元素的 body 中使用此类创建:ag-theme-material ag-popup,里面是编辑器,但我希望它在其他地方,例如 body > div.cdk-overlay-container

在文档中找不到任何帮助。

<body>
  <div class="cdk-overlay-container"></div>
  <div class="ag-theme-material ag-popup"></div>
</body>

谢谢

编辑:我已成功将 ag-pupup 移动到 cdk-overlay-container,如下所示,在自定义单元格编辑器组件中:

public afterGuiAttached(): void {
    const parrent = document.querySelector(".cdk-overlay-container");
    const agPopup = document.querySelector(".ag-popup");
    if (parrent && agPopup) {
      parrent.appendChild(agPopup);
    }
  }

但是当我点击并想要关闭单元格编辑器时,我得到:

无法在“Node”上执行“removeChild”:要删除的节点是 不是该节点的子节点。

发生这种情况是因为 api 知道旧路径,但现在知道新路径。 任何 api 指导都值得赞赏。

javascript angular typescript ag-grid
1个回答
0
投票

解决方案确实存在,来自aggrid:

popupParent

类型 HTML 元素 |无效的 用作网格弹出窗口(上下文菜单、列菜单等)的弹出父级的 DOM 元素。

© www.soinside.com 2019 - 2024. All rights reserved.