Ste*_*anu 5 treeview flatten angular-material angular
升级到Angular Material - 版本 12后(“@angular/material”:“^12.1.2”)。看来我无法再从MatTreeFlatDataSource访问_flattenData属性。这部分代码用于在升级之前工作:
this.dataSource._flattenedData.value.forEach(item => {
const issueHasThisItem =
this.data.exitingItems.findIndex(
(loopItem: Entity) =>
(item.level === 1 ||
this.data.treeModalType === TreeModalType.SOLUTION) &&
loopItem.id === item.item.id
) !== -1;
if (issueHasThisItem) {
this.checklistSelection.select(item);
}
});
Run Code Online (Sandbox Code Playgroud)
现在,似乎 _flattenData 是只读私有的,并且不再起作用(根据最新提交:Angular Material 链接):
Error: src/app/modules/issues/components/issue-impact/tree-modal/tree-modal.component.ts:151:21 - error TS2341: Property '_flattenedData' is private and only accessible within class 'MatTreeFlatDataSource<T, F, K>'.
151 this.dataSource._flattenedData.value.forEach((item) => {
~~~~~~~~~~~~~~
Run Code Online (Sandbox Code Playgroud)
我知道这不是访问扁平化数据的正确方法。还有其他选择吗?
小智 3
您可以通过以下方式访问节点treeControl:
this.treeControl.dataNodes.forEach(item => {
Run Code Online (Sandbox Code Playgroud)
来源:https ://stackoverflow.com/a/53545700/6025248
| 归档时间: |
|
| 查看次数: |
1340 次 |
| 最近记录: |