如何从Angular中的2个不同的mat树访问数据?

在我的项目中,我正在使用2种不同角度材料的树木。

我在https://stackblitz.com/edit/angular-wvbg5j上的stackblitz上创建了一个演示。

当我尝试访问他们的数据时,我使用treeControl.dataNodes,但是它只为我提供最新生成的树(“ groceries2和hinters2树”)中的数据。每次我选中/取消选中一个项目时,它都会在控制台中显示dataNodes。

所以我不知道该怎么办,还有另一种访问树数据的方法吗?还是有将两个树都存储在内存中的功能?

hushikai123 回答:如何从Angular中的2个不同的mat树访问数据?

只需在处理复选框更改时将数据源添加为参数:

(change)="todoLeafItemSelectionToggle(node,dataSourceX)"

在函数内部,只需访问data属性即可:

todoLeafItemSelectionToggle(node: TodoItemFlatNode,dataSource : MatTreeFlatDataSource<TodoItemNode,TodoItemFlatNode>): void {
    console.log(dataSource.data) ;
    this.checklistSelection.toggle(node);
    this.checkAllParentsSelection(node);
    this.getParentNode(node)
  }
本文链接:https://www.f2er.com/3153933.html

大家都在问