Javascript 角材质树中的预复选框

Javascript 角材质树中的预复选框,javascript,angular,typescript,tree,angular-material,Javascript,Angular,Typescript,Tree,Angular Material,我正在展示一个有角度的材质树。树本身工作正常,但我也有一个已选择值的名称/ID列表。数据是单独给我的。我还没有弄清楚如何在加载时在树中预先设置复选框 我在这里创建了一个Stackblitz来显示我的问题: 我最初的想法是尝试查看我的选定列表,然后在ngInit中手动切换选定列表,就像这样(但这不起作用): 有人有其他建议吗?我在网上找不到任何例子。终于找到了一个类似的例子,说明我在寻找什么 通过循环我现有的节点,并将它们与我现有的选定数据列表进行比较;我可以使用现有节点来切换检查,而不是创建新副

我正在展示一个有角度的材质树。树本身工作正常,但我也有一个已选择值的名称/ID列表。数据是单独给我的。我还没有弄清楚如何在加载时在树中预先设置复选框

我在这里创建了一个Stackblitz来显示我的问题:

我最初的想法是尝试查看我的选定列表,然后在ngInit中手动切换选定列表,就像这样(但这不起作用):


有人有其他建议吗?我在网上找不到任何例子。

终于找到了一个类似的例子,说明我在寻找什么

通过循环我现有的节点,并将它们与我现有的选定数据列表进行比较;我可以使用现有节点来切换检查,而不是创建新副本

像这样:

    for (let i = 0; i < this.treeControl.dataNodes.length; i++) {
      for (const pg of selectedBoxes) {
        if (this.treeControl.dataNodes[i].item == pg.Product_Group_Name) {
          this.todoItemSelectionToggle(this.treeControl.dataNodes[i]);
          this.treeControl.expand(this.treeControl.dataNodes[i])
        }
      }
    }
for(设i=0;i
[checked]=“true”
要检查只检查每个复选框的复选框…您询问了“如何预检查复选框”。如果您想有条件地检查它们,可以使用函数检索状态。在我上面的代码中,我循环并选择所选数据,以有条件地检查复选框并将它们放入复选列表选择中,正在
[checked]
属性中使用。但它不起作用,所以我的问题就在这里。
    for (let i = 0; i < this.treeControl.dataNodes.length; i++) {
      for (const pg of selectedBoxes) {
        if (this.treeControl.dataNodes[i].item == pg.Product_Group_Name) {
          this.todoItemSelectionToggle(this.treeControl.dataNodes[i]);
          this.treeControl.expand(this.treeControl.dataNodes[i])
        }
      }
    }