I am opening this issue to resolve all the mysteries around the SPA mode. Seems like I am not the only one having problems with spa mode.
First of all I do not require ssr that's why I switched it off.
First of all I would like to add instructions how to setup spa mode. There are no instructions in documentation how this is done correctly. I am still not sure if I am doing it right but based on some other issues opened here I came to this:
mode: 'spa' to the nuxt.config.jspackage.json and change scripts key to this:"scripts": {
"dev": "nuxt --spa",
"build": "nuxt build --spa",
"start": "nuxt start",
"generate": "nuxt generate",
"lint": "eslint --ext .js,.vue --ignore-path .gitignore .",
"precommit": "npm run lint"
},npm run dev and navigate to localhost:3000Can someone confirm this is the right setup?
ISSUE 1 404 page not found. For some reasons some of the pages in the get 404 error. I have opened issue > https://github.com/nuxt/nuxt.js/issues/1767. If I switch to universal mode page is working. There is another possible issue related to this > https://github.com/nuxt/nuxt.js/issues/1661
QUESTION 1 Are the page and layout middleware(s) executed in the spa mode on the client side? Are they executed on page refresh?
QUESTION 2 - Are asyncData() or fetch() the right places to call backend API to get page data or should we use mounted() or created() hook to call the API?
QUESTION 3 - Where to add authentication checks in spa mode? Should this be added as a registered NuxtJS plugin and registered in nuxt.config.js or should this be part of the page/layout middleware?
Thanks for answers.
<!--cmty--><!--cmty_prevent_hook--><div align="right"><sub><em>This question is available on <a href="https://nuxtjs.cmty.io">Nuxt.js</a> community (<a href="https://nuxtjs.cmty.io/nuxt/nuxt.js/issues/c1588">#c1588</a>)</em></sub></div>