From 128e2a0b042dbf4e0ad38459a9a2bef28b344d07 Mon Sep 17 00:00:00 2001 From: Victoria Wei Date: Tue, 19 Jun 2018 15:55:07 -0500 Subject: [PATCH] fix(tree): fix dynamic tree example and demo not closing children (#11148) #11728 --- src/demo-app/tree/dynamic-tree-demo/dynamic-database.ts | 5 ++++- src/material-examples/tree-dynamic/tree-dynamic-example.ts | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/demo-app/tree/dynamic-tree-demo/dynamic-database.ts b/src/demo-app/tree/dynamic-tree-demo/dynamic-database.ts index 4a00dd90258..66f9d6de8b2 100644 --- a/src/demo-app/tree/dynamic-tree-demo/dynamic-database.ts +++ b/src/demo-app/tree/dynamic-tree-demo/dynamic-database.ts @@ -106,7 +106,10 @@ export class DynamicDataSource { new DynamicFlatNode(name, node.level + 1, this.database.isExpandable(name))); this.data.splice(index + 1, 0, ...nodes); } else { - this.data.splice(index + 1, children.length); + let count = 0; + for (let i = index + 1; i < this.data.length + && this.data[i].level > node.level; i++, count++) {} + this.data.splice(index + 1, count); } // notify the change diff --git a/src/material-examples/tree-dynamic/tree-dynamic-example.ts b/src/material-examples/tree-dynamic/tree-dynamic-example.ts index e8dba37e61f..7f9b4052826 100644 --- a/src/material-examples/tree-dynamic/tree-dynamic-example.ts +++ b/src/material-examples/tree-dynamic/tree-dynamic-example.ts @@ -100,7 +100,10 @@ export class DynamicDataSource { new DynamicFlatNode(name, node.level + 1, this.database.isExpandable(name))); this.data.splice(index + 1, 0, ...nodes); } else { - this.data.splice(index + 1, children.length); + let count = 0; + for (let i = index + 1; i < this.data.length + && this.data[i].level > node.level; i++, count++) {} + this.data.splice(index + 1, count); } // notify the change