From ddde9f18f56912aa5644258cad521036314028ab Mon Sep 17 00:00:00 2001 From: Adam Bradley Date: Wed, 7 Dec 2016 22:14:18 -0600 Subject: [PATCH] chore(virtual-scroll): only run detection on individual nodes --- src/components/virtual-scroll/test/list/app-module.ts | 2 +- src/components/virtual-scroll/test/list/main.html | 2 +- src/components/virtual-scroll/virtual-scroll.ts | 8 ++++++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/components/virtual-scroll/test/list/app-module.ts b/src/components/virtual-scroll/test/list/app-module.ts index 5c65c2580b..e3c5e93524 100644 --- a/src/components/virtual-scroll/test/list/app-module.ts +++ b/src/components/virtual-scroll/test/list/app-module.ts @@ -9,7 +9,7 @@ export class E2EPage { items: Array<{id: number, url: string, gif: string}> = []; imgDomain = 'http://localhost:8900'; responseDelay = 1500; - itemCount = 15; + itemCount = 1000; showGifs = false; constructor() { diff --git a/src/components/virtual-scroll/test/list/main.html b/src/components/virtual-scroll/test/list/main.html index 50b52ec6b1..82f8d73d03 100644 --- a/src/components/virtual-scroll/test/list/main.html +++ b/src/components/virtual-scroll/test/list/main.html @@ -19,7 +19,7 @@
- gulp test.imageserve + gulp test.imageserver
diff --git a/src/components/virtual-scroll/virtual-scroll.ts b/src/components/virtual-scroll/virtual-scroll.ts index 86a45e5383..81f843e8f2 100644 --- a/src/components/virtual-scroll/virtual-scroll.ts +++ b/src/components/virtual-scroll/virtual-scroll.ts @@ -481,7 +481,9 @@ export class VirtualScroll implements DoCheck, AfterContentInit, OnDestroy { updateNodeContext(nodes, cells, data); // ******** DOM WRITE **************** - this._cd.detectChanges(); + for (var i = 0; i < nodes.length; i++) { + (nodes[i].view).detectChanges(); + } // add an element at the end so :last-child css doesn't get messed up // ******** DOM WRITE **************** @@ -613,7 +615,9 @@ export class VirtualScroll implements DoCheck, AfterContentInit, OnDestroy { updateNodeContext(nodes, cells, data); // ******** DOM WRITE **************** - this._cd.detectChanges(); + for (var i = 0; i < nodes.length; i++) { + (nodes[i].view).detectChanges(); + } // ******** DOM WRITE **************** writeToNodes(nodes, cells, this._records.length);