perf(next): reduce getNavPrefs calls from 3 to 1 per page load #11318
+14
−9
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.
Previously, we were calling
getNavPrefs
(a payload.find call) three times for every single page load.This PR:
getNavPrefs
is called only once per page load, reducing two unnecessarypayload.find
calls every time a page is loaded or navigated to.pagination: false
to thepayload.find
call, making it more efficient and improving performance.How?
We were using React's cache to ensure that navigation preferences (
getNavPrefs
) were fetched only once per request. However, this wasn't working as expected because the first argument ofgetNavPrefs
was an object. Each time it was called, a new object reference was passed, preventing React from caching it properly.To fix this, this PR ensures that only primitive values are used as arguments for caching, following best practices and making the cache function work as intended.