【问题标题】:Angular Material 6.0.1 : how to expand any node in angular mat-tree?Angular Material 6.0.1:如何扩展 Angular mat-tree 中的任何节点?
【发布时间】:2018-11-30 04:12:26
【问题描述】:

展开/折叠 mat-tree 中的所有节点工作正常。但我不明白如何扩展 mat-tree 中的特定节点?

请为此提供任何参考或解决方案。

【问题讨论】:

  • plese consult help section on how to formulate your question 你通常会得到尽可能多的帮助,就像你在问题表述上付出的努力一样多。
  • 你能展示一下你到目前为止所尝试的吗?
  • 我已经尝试了一些东西并且知道 mat-tree 的 treeControl 包含我想要扩展的节点。 var 节点 = this.treeControlTarget.dataNodes; let referenceToNode = nodes.find(d => condition to find node) this.treeControlTarget.expand(referenceToNode);谢谢

标签: tree angular-material angular6


【解决方案1】:

我知道这个 stackblitz 和 6.0.1 版本之间的材料版本可能不同...但这个概念仍应适用于 6.0.1 版本

请在此 stackblitz 示例中引用 ngAfterViewInit()

  • 您需要在 treeControl 上为要展开的每个节点调用 expand() 并传递该节点。

此 stackblitz 预选 Fruits 类别并在初始化时扩展 Groceries 树和 Fruits 树。

https://stackblitz.com/edit/angular-j2nf2r?embed=1&file=app/tree-checklist-example.html

ngAfterViewInit() {
    for (let i = 0; i < this.treeControl.dataNodes.length; i++) {
      if (this.treeControl.dataNodes[i].item == 'Fruits') {
        this.todoItemSelectionToggle(this.treeControl.dataNodes[i]);
        this.treeControl.expand(this.treeControl.dataNodes[i])
      }
      if (this.treeControl.dataNodes[i].item == 'Groceries') {
        this.treeControl.expand(this.treeControl.dataNodes[i])
      }
    }
  }

【讨论】:

    猜你喜欢
    • 2019-03-05
    • 2018-11-09
    • 1970-01-01
    • 2019-05-08
    • 1970-01-01
    • 1970-01-01
    • 2022-10-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多