【发布时间】:2023-03-16 06:31:01
【问题描述】:
我尝试建立一个 ssr 项目。 所以我在 asyncData 函数中使用 store 如下
async asyncData({ store, params, req }) {
if(process.server){
store.dispatch(...)
store.commit(...)
return {...}
}
}
它在客户端开发环境中运行良好,它为每个用户创建带有新 axios 客户端的新商店 请求服务器端渲染。 但是一旦我把它放到实验室,一个建立在 aws 上的容器,它就会连接起来。 请求和会话不同,但它们共享相同的存储和 axios 实例。 这样我的数据就乱了。
库: "nuxt": "^2.12.2", "axios": "^0.19.2",
=========================更新1 ==================== =====
我得到了第一点,一旦我在本地构建并运行,它就会以相同的结果运行。 在脚本之前:
"cross-env NODE_ENV=development backpack"
现在脚本:
"cross-env NODE_ENV=production nuxt build"
"cross-env NODE_ENV=production backpack build"
"cross-env NODE_ENV=production node build/main.js"
【问题讨论】:
-
你不需要
if(process.server),因为asyncData总是在服务器端 -
它也可以在客户端运行,但这不是导致问题的关键
标签: amazon-web-services vue.js vuex nuxt.js asyncdata