You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
One unavoidable side effect of fetching resources clientside if latency. If left unhandled this can definitely make for an odd user experience, where different pieces of a page pop into place here and there as data is gathered, manipulated, and rendered into the page.
Bootstrapping a page with as much content as possible serverside is the usual go to for combatting this. Implementing spinners and other indeterminate progress indicators is important. Some artfully constructed CSS can also mitigate the chaos by blocking out content containers in advance. The Solidus server and the callbacks should help with implemention of all this. But something else we should perhaps consider is caching via localStorage.
There's some precedence, data, and libraries out there, that all especially make a case for memory-constrained mobile devices:
Not sure how what clientside cache headers generally look like, whether we'd need to invalidate resources too quickly for this to be useful. Perhaps we could take a background fetching approach as we do on the server though and only replace resources when they actually change, ensuring that after the initial caching we'd usually have some data onhand, albeit possibly slightly stale.
Something to think about.
The text was updated successfully, but these errors were encountered:
One unavoidable side effect of fetching resources clientside if latency. If left unhandled this can definitely make for an odd user experience, where different pieces of a page pop into place here and there as data is gathered, manipulated, and rendered into the page.
Bootstrapping a page with as much content as possible serverside is the usual go to for combatting this. Implementing spinners and other indeterminate progress indicators is important. Some artfully constructed CSS can also mitigate the chaos by blocking out content containers in advance. The Solidus server and the callbacks should help with implemention of all this. But something else we should perhaps consider is caching via localStorage.
There's some precedence, data, and libraries out there, that all especially make a case for memory-constrained mobile devices:
Not sure how what clientside cache headers generally look like, whether we'd need to invalidate resources too quickly for this to be useful. Perhaps we could take a background fetching approach as we do on the server though and only replace resources when they actually change, ensuring that after the initial caching we'd usually have some data onhand, albeit possibly slightly stale.
Something to think about.
The text was updated successfully, but these errors were encountered: