我正在使用 Angular (6.0.9) 和 PrimeNG (6.0.1) 的最新稳定版本。当我尝试以编程方式将子节点添加到选定节点时,除非我折叠然后展开选定的父节点,否则它不会显示。首先我尝试过
this.selectedNode.children.push(this.nodeToAdd);
Run Code Online (Sandbox Code Playgroud)
然后我在官方文档中看到,如果“操作值,例如删除节点、添加节点或更改节点的子节点,而不是使用数组方法(例如push、splice),而是使用扩展运算符或类似操作创建新的数组引用”。所以我尝试了这个:
this.selectedNode.children = [...this.selectedNode.children, this.nodeToAdd];
Run Code Online (Sandbox Code Playgroud)
但它会导致相同的行为。有人面临同样的问题,还是我做错了什么?Chrome、Firefox 和 Edge 中均出现问题
我遇到了同样的问题,扩展运算符也对我不起作用,但幸运的是我在这里找到了解决方法(这里他们试图刷新 prime-ng 数据表)这不是直接的解决方案,但它可以在组件中出现错误时节省您的时间(我相信是这样)不是固定的。
这是原始答案的代码,对树表稍作更改:
visible: boolean = true;
updateVisibility(): void {
this.visible = false;
setTimeout(() => this.visible = true, 0);
}
<button (click)="updateVisibility()">
<p-treeTable *ngIf="visible"></p-treeTable>
Run Code Online (Sandbox Code Playgroud)
PS我使用Angular 5,但希望它能有所帮助
| 归档时间: |
|
| 查看次数: |
2994 次 |
| 最近记录: |