我用Angular材质树创建了一个简单的树:
https://stackblitz.com/edit/angular-exhejg-vx5i7c?file=app/tree-dynamic-example.html
<mat-tree [dataSource]="dataSource" [treeControl]="treeControl" >
<mat-tree-node *matTreeNodeDef="let node" matTreeNodePadding >
<button mat-icon-button ></button>
{{node.item}}
</mat-tree-node>
<mat-tree-node *matTreeNodeDef="let node; when: hasChild" matTreeNodePadding >
<button mat-icon-button
[attr.aria-label]="'toggle ' + node.filename" matTreeNodeToggle>
<mat-icon class="mat-icon-rtl-mirror">
{{treeControl.isExpanded(node) ? 'expand_more' : 'chevron_right'}}
</mat-icon>
</button>
{{node.item + '2'}}
<mat-progress-bar *ngIf="node.isLoading"
mode="indeterminate"
class="example-tree-progress-bar"></mat-progress-bar>
</mat-tree-node>
</mat-tree>
Run Code Online (Sandbox Code Playgroud)
看起来像 :
但是,如何添加分支线?像(从这里):
我正在为项目使用角材料的树组件。这是 stackblitz链接,在这里我需要实现两件事:
1)子元素的文本颜色必须在鼠标悬停时更改。
2)在单击/选择子元素时,必须更改背景颜色,背景颜色必须保持不变,直到我选择下一个子元素(如带有选择的列表)为止。
像这样