Matchu
eaa4fbb575
Okay, so getting the initial render down time for these faces is annoying, though I might come back to it… But actually, the _worst_ part isn't the _initial_ render, which just kinda gets processed as part of the page navigation, right? The _worst_ part is that we render it slowly _twice_: once on page load, as we send the `useAllValidPetPoses` fetch request; and then again when the fetch request ~instantly comes back from the network cache. The fact that this requires a double-render, instead of just rendering with the cached valids data in the first place (like how our GraphQL client does), causes a second and highly-visible render of a slow-to-render UI! So, here we update `useAllValidPetPoses` to cache its response in JS memory, similar in principle to how Apollo Client does. That way, we can return the valids instantly on the first render, if you already loaded them from the homepage or the wardrobe page or another item page! |
||
---|---|---|
.. | ||
HangerSpinner.js | ||
HTML5Badge.js | ||
ItemCard.js | ||
OutfitMovieLayer.js | ||
OutfitPreview.js | ||
OutfitThumbnail.js | ||
PaginationToolbar.js | ||
SpeciesColorPicker.js | ||
SquareItemCard.js | ||
useCurrentUser.js | ||
useOutfitAppearance.js | ||
useRequireLogin.js | ||
WIPCallout.js |