fix: improve profiles page load by ~8s with 200 more routes #140
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.
Closes #139
One home page (routes) every time you expanded or collapsed a single item ALL routes would re-render. This was visually evident with 200ish routes. I resolved by memoizing the setState callback and instead of passing the selected route string to ALL components (changed every selection), I pulled the conditional check up to the routes page so that it only passed a boolean to each component (so that ONLY the component(s) which changed will rerender).
On profile page instead of making api call to select all routes I just make api call to get active variants, then I perform check against that. This helped reduce time it took to process especially when there were hundreds of routes by several seconds.