guidelines for server rendering vue components
Description
Currently vue components are rendered to replace empty divs, so UI jumps around a lot.
Proposal
consistent way of rendering Vue components from HAML
could be one of:
- show loading spinner / placeholder [as seen in https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/11434]
- duplicate content in HAML, or show stripped-down readonly version
- actually server render
- unserver render - hide the entire UI until JS has loaded then show everything
Choice should be added to https://gitlab.com/gitlab-org/gitlab-ce/issues/31580
Links / references
Vue has server renderer but needs node :(
Edited by Simon Knox