javascript - Nuxt(或节点)混合桌面和移动环境(使用桌面+移动数据渲染页面)
问题描述
我有一些模板代码的桌面/移动特定部分,例如:
<div v-if="!isMobile">
{{ Show something desktop specific }}
</div>
<div v-if="isMobile">
{{ Show something mobile specific }}
</div>
isMobile
是一个存储在里面的变量vuex
。
对于设备检测,我使用nuxtjs/device。
问题:如果我同时打开桌面版和移动版,渲染的html是混合的,即桌面版显示桌面页面+移动特定的东西,移动版显示移动页面+桌面特定的东西。
我最初认为是 Nginx 内部某个地方的问题(可能与缓存部分有关),但我只是检查了“npm run start”,发现这个问题是特定于 nuxt(或节点)的。
当前生产服务器结构:
-> nginx-proxy(1 个容器)
-> 带有 LetsEncrypt 证书和每个域缓存的 nginx(1 个容器)
-> 带有运行“npm run start”的附加 nuxt 代码的节点(5 个容器,每个域一个)。
目前我知道的最简单的方法是为桌面版和移动版分别提供一个 docker 容器,但现在我已经为 5 个不同的域(通过 API 接收特定设置)提供了 5 个容器,并且未来域的数量将会增长,所以如果可能的话,我想避免每个域有 2 个容器(移动/桌面)。
有没有办法为桌面和移动版本保留一个容器?也许我配置错误?
解决方案
推荐阅读
- reactjs - 如何从 Apollo set Context Http Link 访问 React 上下文
- javascript - 未知高度容器中的文本元素
- docker - 为什么在运行 'docker run nodeWeb' 时出现'/bin/sh: [npm,: not found' 错误?
- python - 正则表达式/对话框流/格式化实体
- python - 我如何用 numpy 满足布料模拟的限制
- c# - Physics2D.IgnoreCollision 也不能正常工作
- arrays - swift文件中的长数组
- emacs - Why does Emacs always blink when start?
- image-processing - Unable to find Huffman table
- google-drive-api - OAuth consent screen...Application Name