perf: add trackBy to channel ngFor and cache anyXtream()#391
Closed
wowitsjack wants to merge 1 commit intoFredolx:mainfrom
Closed
perf: add trackBy to channel ngFor and cache anyXtream()#391wowitsjack wants to merge 1 commit intoFredolx:mainfrom
wowitsjack wants to merge 1 commit intoFredolx:mainfrom
Conversation
- Add trackBy function on the channels *ngFor to prevent full DOM re-render when the channel array is reassigned (search, filter, page load) - Cache anyXtream() result as a property instead of calling it on every change detection cycle (it iterates the Sources map each time)
c7e6bbd to
ba123bf
Compare
Author
|
Agreed, signed |
1e4a7d6 to
ba123bf
Compare
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
trackBy: trackByChannelIdto the channels*ngForloop, preventing Angular from destroying and recreating all channel tile DOM nodes on every array reassignment (search, filter change, page load)anyXtream()result asisAnyXtreamproperty, set once when Sources are loaded, instead of calling the method on every change detection cycle (it iterates the entire Sources map each time)Test plan