2👍
Nuxt is isomorphic but will make a call to the server only on the initial render. That one will be generated on the server (supposing ssr: true
) and will be sent to your browser.
There, you will only get client-side navigation on any successful route changes thanks to Vue router.
If you use an a
tag, you will be nuking your whole Nuxt/Vue app and creating a brand new from scratch, hence have another backend generation (clearly not the way to go as you can guess).
If you want to have an example of data fetching using fetch()
(lifecycle hook), you can check this answer. It can also be done in a blocking way by using the asyncData()
.
PS: I recommend you using the ones above rather than created()
and mounted()
in a Nuxt app + try to use async/await
all the time rather than a mix between those + .then
.