vueuse/head

SSR hydration with `<suspense>` flashes intermediary state

Closed this issue · 1 comments

Reproduction: https://stackblitz.com/edit/nuxt-starter-bdn1o1?file=pages/index.vue

Described here: nuxt/nuxt#14438, duplicate here #75

Given the above reproduction, you can see that the client hydration logic is working like this:

Initial state (SSR HTML)

  • title is Index title

Hydration

  • update title to root title
  • __ wait for setup promise to resolve __
  • update title to Index title

This will always result in a flash of the intermediary state if the promise is not resolved within the tick.