I have the auth module only being used in the /admin/ section of my site. After implementing it when I yarn generate I get this error for every route:
Generate errors summary:
ROUTE /merchandise
TypeError: Cannot read property 'url' of undefined
- server-bundle.js:3999 Auth.get isAPIRequest [as isAPIRequest]
server-bundle.js:3999:30
- server-bundle.js:3812 module.exports.__webpack_exports__.a
server-bundle.js:3812:13
- server-bundle.js:1590 createApp
server-bundle.js:1590:207
ex:

+1
Seems like yarn generate --spa does manage to generate routes, but proxy for requests doesn't work.
+1
(Original reported bug) Will be fixed soon.
In case it helps, my nuxt.config.js
modules: [
'@nuxtjs/axios',
'@nuxtjs/auth',
],
auth: {
redirect: {
login: '/admin',
home: '/admin/videos',
},
endpoints: {
user: { url: '/me', method: 'get', propertyName: 'data' },
logout: { url: '/logout', method: 'get', propertyName: 'data' },
},
},
axios: {
credentials: true,
init (axios, ctx) {
axios.defaults.headers.common['Accept'] = 'application/json'
},
errorHandler (error, ctx) {
if (error.response.data && error.response.data.message === 'Token has expired') {
ctx.$axios.get('/logout').then((response) => {
error.config.__isRetryRequest = true
return ctx.$axios(error.config)
})
}
return Promise.reject(error)
}
},
Dirty workaround:
In node_modules/@nuxtjs/auth/lib/templates/auth.class.js
Change all lines with this.$req and add a conditional.
Line 118:
old -> this.$req.url.indexOf(this.options.endpoints.user.url) === 0
new -> this.$req && this.$req.url.indexOf(this.options.endpoints.user.url) === 0
Line 197_
old -> : this.$req.headers.cookie
new -> : this.$req ? this.$req.headers.cookie : null
Probably this can break some funcionalities
This is fixed by latest stable release (4.0) 馃帄 !
Most helpful comment
(Original reported bug) Will be fixed soon.