Как инициализировать VUE компонет?
Ну, обычно инициализируете данные по умолчаию, возможно добавляете состояние прелоадера, а когда ваши данные из БД (или ещё откуда) придут — заменяете{
  template: `
    <div>
      <preloader v-if="!pageData" />
      <div v-else >
        ...
      </div>
    </div>
  `,

  data() {
    return {
      pageData: null
    }
  },

  async mounted() {
    this.pageData = await getData()
  }
}
Ну по сути тут описан подход  с window.__INITIAL_STATE__, в эту переменную с сервера суешь json готовенький, и потом его подсовываешь состоянию своему
https://ssr.vuejs.org/ru/guide/data.html