Тоже столкнулся с такой проблемой в итоге решил так:
из nuxtServerInit вынес всю асинхронщину в отдельный action
async nuxtServerInit({dispatch}) {
await dispatch('loadInitialPosts')
},
И после этого, в тех компонентах, которые не рендерили асинхронные данные из стора. Теперь просто дергаю этот экшен (loadInitialPosts), посты грузятся в стор, и вставляю эти данные через computed в разметку компонента и посты появляются.
Вот так выглядит компонент, проверка if, чтобы лишний раз не дергать сервер
created() {
if (!this.getPostsLoaded || this.getPostsLoaded.length === 0) {
// Если стор пустой
this.$store.dispatch('loadInitialPosts')
}
},
computed: {
getPostsLoaded() {
return this.$store.getters.getPostsLoaded
}
}