Angular Material 6.0.1 Дерево по умолчанию открыто и развернуть / свернуть все - PullRequest
0 голосов
/ 11 мая 2018

Я использую Angular Material Tree в своем проекте. Возможно ли открыть дерево по умолчанию.

И может ли быть способ развернуть / свернуть все узлы одновременно (например, с помощью кнопки)

https://material.angular.io/components/tree/overview

1 Ответ

0 голосов
/ 11 мая 2018
TreeControl

MatTree предоставляет метод expandAll, который можно использовать для развертывания всех узлов дерева, и collapseAll для закрытия всех узлов дерева.

Вы можете создать экземпляр MatTree через ViewChild и вызвать expandAll в ngAfterViewInit спасательном хуке, чтобы по умолчанию его расширили.

@ViewChild('tree') tree;

ngAfterViewInit() {
  this.tree.treeControl.expandAll();
}

Исходный пример для вызова из шаблона:

<button (click)="tree.treeControl.collapseAll()">collapseAll</button>
<button (click)="tree.treeControl.expandAll()">expandAll</button>
<mat-tree #tree [dataSource]="dataSource" [treeControl]="treeControl">
  ...
<mat-tree>

см. пример .

...