惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Know Your Adversary
Know Your Adversary
云风的 BLOG
云风的 BLOG
Recent Announcements
Recent Announcements
F
Fortinet All Blogs
B
Blog
罗磊的独立博客
宝玉的分享
宝玉的分享
Vercel News
Vercel News
Martin Fowler
Martin Fowler
N
Netflix TechBlog - Medium
P
Proofpoint News Feed
T
Threatpost
Security Latest
Security Latest
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Stack Overflow Blog
Stack Overflow Blog
I
Intezer
P
Privacy International News Feed
D
Docker
月光博客
月光博客
博客园 - 三生石上(FineUI控件)
M
MIT News - Artificial intelligence
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
L
Lohrmann on Cybersecurity
Google DeepMind News
Google DeepMind News
The Last Watchdog
The Last Watchdog
A
Arctic Wolf
IT之家
IT之家
S
SegmentFault 最新的问题
S
Securelist
博客园 - 叶小钗
N
News and Events Feed by Topic
F
Full Disclosure
Security Archives - TechRepublic
Security Archives - TechRepublic
Engineering at Meta
Engineering at Meta
Hacker News: Ask HN
Hacker News: Ask HN
博客园 - Franky
GbyAI
GbyAI
AI
AI
Y
Y Combinator Blog
WordPress大学
WordPress大学
Latest news
Latest news
Microsoft Security Blog
Microsoft Security Blog
人人都是产品经理
人人都是产品经理
N
News | PayPal Newsroom
The Cloudflare Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
I
InfoQ

Nuxt.js

nuxt3 大佬帮忙看个问题! - V2EX Nuxt3 的 public 静态资源文件怎么更新 - V2EX 小心 Nuxt/Device 的坑 - V2EX nuxt3 axios 请求出来的数据在源代码中没有这也没有办法 SEO 呀? - V2EX nuxt 部署在 cf Page 上 想用 env 里的环境变量 - V2EX Nuxt 下大家如何做用户身份认证 - V2EX nuxt 官网首页的水波效果动画是如何实现的? - V2EX nuxt3 在使用 nuxt/i18n 之后打包中的依赖生成软链接的文件夹,如何让它不生成这种文件夹? - V2EX nuxt3 请求数据的最佳实践是什么 - V2EX 用 nuxtjs vue 开发的一个后台系统 后悔了 还不如用 extjs - V2EX nuxt 怎么直接查询数据库然后给页面插值呢? - V2EX Nuxt 能不能结合 generate 和 build 两种方式? - V2EX 居然有 nuxtjs 的节点了,分享一下我的基于 nuxtjs 的博客吧 - V2EX
如何确定 Nuxtjs 当前的渲染模式? - V2EX
rocmax · 2023-05-17 · via Nuxt.js

中途参加了一个使用 Nuxtjs(v2.15.7)开发客户管理 APP 的团队,本人有 React/Nextjs 开发经验,一开始就是看看文档照猫画虎写点页面,稍微深入了解项目之后对于如何配置 Nuxtjs 渲染方式产生了一点疑问,求指点。

项目当前的情况:

  • nuxt.config.js内的相关配置为
      ssr: false,
      target: "static",
      generate: 未配置
    
  • Docker 化时候用的是npm run generate,启动命令npm start。并没有做只拷贝 dist 目录等减少镜像体积的优化,所有文件原封不动塞到镜像里然后部署到 K8s
  • 使用了动态路由(/post/_id),而且可以正常显示

想问一下这种情况下项目跑在何种模式下( ssr,ssg,spa )?

下面是问题发现的过程,有点长:

由于这个项目部署到 K8s 而不是 CDN ,最初我认为采用的是 SSR 模式。当时遇到个情况是每次 CI 在 build 阶段都要针对不同环境( dev,test,prod...)生成多个镜像,差别只是环境变量不同。我想直接利用 runtimeConfig 把这些变量放到 pod 里的话 CI 做一个镜像就够了。但是尝试失败。

后来我看了 nuxtjs 配置文件,意识到我理解错了,项目采用的应该是 SSG 方式,确实看 generate 日志也是生成了每个页面的文件,静态文件的话当然是无法从环境读取变量,只有 build 阶段替换了。

再后来我发现另外一个开发人员使用了 dynamic route(/post/_id 这样的路由,id 是动态变化的,无法在 build 时从数据库获取,而且 generate 也没配,之前已经开发的部分没用过动态路由)。我想 SSG 模式下动态路由会被忽略不生成,我就提醒他说可能页面没法用。但是现实打脸,部署后可以正常访问。

于是我看了访问页面时返回的 html ,发现所有页面都只有一个id="__nuxt"节点,这种情况应该是 fallback 到 SPA 了吧,感觉是每个页面被单独做成了一个 SPA ?如果是这样的话 generate 就完全是多余的。

那么,npm start启动 Nuxt 服务器的时候到底是如何处理的?会检查已经 generate 好的文件吗?