Quiero inicializar mi tienda con datos de una API. nuxtServerInit no es útil para mi caso porque el objetivo de mi aplicación Nuxt está configurado en 'static' . Estoy tratando de implementar un middleware de enrutador para obtener datos de forma asíncrona pero sin bloquear el hilo principal. En otras palabras, el middleware permite que la página se cargue (montada), pero las actualizaciones se almacenan cada vez que se obtienen los datos.
El problema con un middleware asíncrono es que no se resolverá hasta que se obtengan los datos.
Y el problema con un middleware síncrono es que mi tienda no se actualizará.
aquí está mi implementación:
middleware/inicializador.js
export default function({ store }) { store.dispatch('app/initializeApp').then(() => console.log('app initialized')) }tienda/aplicación.js
initializeApp({ dispatch }) { return dispatch('fetchOptions') }, fetchOptions({ commit }) { return this.$axios.$post(someEndpoint).then(({ options }) => { commit('setAppOptions', options) return true }).catch(() => false) }No entiendo por qué funciona el registro de la consola, pero mi tienda no está actualizada.