-
-
Notifications
You must be signed in to change notification settings - Fork 47
Description
π The bug
I was using middleware to fetch user configuration data before navigating to pages, when I realized that the page setup was run before the middleware. Through some trial and error I figured out that removing Nuxt/ionic fixed the issue, but I also found out that adding the Nuxtjs/i18n module worsened the issue.
So I created a project tracking the following:
- Global middleware
- Page middleware
- App setup function
- Page setup function
And I got these results:
- (Nuxt alone) works as expected:

- (Nuxt + Nuxt/ionic) App setup gets run first but everything else in the correct order:

- (Nuxt + Nuxtjs/i18n) works as expected:

- (Nuxt + Nuxt/ionic + Nuxtjs/i18n) every page setup is run before middleware

I'm still pretty new to Nuxt & Ionic so I might be completely missing some critical information, but the Nuxt/ionic documentation gives the impression that middleware should just work with no caveats.
π οΈ To reproduce
https://stackblitz.com/edit/hui123
π Expected behaviour
For the execution order to match the basic Nuxt project when refreshing the page, and to also work with the i18n nuxt module
- Global middleware
- Page middleware
- App setup function
- Page setup function
βΉοΈ Additional context
Reproductions used to get the different results:
Nuxt middleware order (Nuxt only)
Nuxt middleware order (Ionic)
Nuxt middleware order (i18n)
Nuxt middleware order (Ionic + i18n)
It might be related to the ionic router integration, because if I disable it in nuxt.config the execution order goes back to normal.