Nuxt 中间件在 SSR 上看不到更新的存储
Nuxt middleware not seeing updated store on SSR
身份验证工作正常,但在第一页加载时除外,即 SSR。当我检查 console.log 时,我发现中间件中的 console.log 始终在 SSR 级别执行,尽管我在配置中添加了 ssr:false。
我做的是这样的:
在nuxt.config.ts中我添加了
{
src: '~/plugins/authenticated.js',
mode: 'client'
}
此代码已成功执行,我可以通过检查我的开发人员控制台的 "vue plugin".
看到这一点
在我的 "component / page" 我添加了一个中间件:
export default {
middleware: [
'authenticated'
]
}
当我 运行 我的中间件中的以下代码时,它总是显示 "false" 即使在商店中该值设置为 true。
console.log(store.state.users.logged);
这让我抓狂,谁能告诉我如何让中间件在第一页加载时工作?我们必须有 SSR,因为我们需要 SEO 等等,但我们也确实需要中间件才能工作。
使用最新的 Nuxt en VueX 版本(与 Axios 相同)。
我遇到了同样的问题,我用mixin解决了。使用 mounted 方法的 Mixin 仅在客户端运行。希望对你有所帮助
身份验证工作正常,但在第一页加载时除外,即 SSR。当我检查 console.log 时,我发现中间件中的 console.log 始终在 SSR 级别执行,尽管我在配置中添加了 ssr:false。
我做的是这样的:
在nuxt.config.ts中我添加了
{
src: '~/plugins/authenticated.js',
mode: 'client'
}
此代码已成功执行,我可以通过检查我的开发人员控制台的 "vue plugin".
看到这一点在我的 "component / page" 我添加了一个中间件:
export default {
middleware: [
'authenticated'
]
}
当我 运行 我的中间件中的以下代码时,它总是显示 "false" 即使在商店中该值设置为 true。
console.log(store.state.users.logged);
这让我抓狂,谁能告诉我如何让中间件在第一页加载时工作?我们必须有 SSR,因为我们需要 SEO 等等,但我们也确实需要中间件才能工作。
使用最新的 Nuxt en VueX 版本(与 Axios 相同)。
我遇到了同样的问题,我用mixin解决了。使用 mounted 方法的 Mixin 仅在客户端运行。希望对你有所帮助