Skip to content
This repository has been archived by the owner on May 25, 2021. It is now read-only.

Commit

Permalink
Merge pull request #505 from andrewlo/trackByNodes
Browse files Browse the repository at this point in the history
fixes #504 - Add trackBy functions to ngFor in component tree
  • Loading branch information
Andrew Lo committed Aug 4, 2016
2 parents 0c39f9a + 35b14f4 commit 2ef7ff8
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 2 deletions.
2 changes: 1 addition & 1 deletion src/frontend/components/component-tree/component-tree.html
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<!-- BLOCK VIEW -->
<main class="monospace col-12 p1">
<bt-node-item *ngFor="let node of tree"
<bt-node-item *ngFor="let node of tree; trackBy: trackById"
[changedNodes]="changedNodes"
[node]="node"
[selectedNode]="selectedNode"
Expand Down
3 changes: 3 additions & 0 deletions src/frontend/components/component-tree/component-tree.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,4 +45,7 @@ export class ComponentTree {
}
}

trackById(index: number, node: any): string {
return node.id;
}
}
6 changes: 5 additions & 1 deletion src/frontend/components/node-item/node-item.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ import {UserActions} from '../../actions/user-actions/user-actions';
</div>
<div class="border-box pl4" *ngIf="node.isOpen || wasRendered">
<bt-node-item *ngFor="let node of node.children"
<bt-node-item *ngFor="let node of node.children; trackBy: trackById"
[changedNodes]="changedNodes"
[hidden]="showChildren()"
[selectedNode]="selectedNode"
Expand Down Expand Up @@ -190,4 +190,8 @@ export class NodeItem {
}
}
}

trackById(index: number, node: any): string {
return node.id;
}
}

0 comments on commit 2ef7ff8

Please sign in to comment.