React vs Next.js

一、Next.js 面试追问(SSR / SSG / ISR 深挖)

1️⃣ 面试官:SSR、SSG、ISR 本质区别?

❌ 初级回答

一个服务端渲染,一个静态生成

✅ 中高级标准回答(一定按这个结构)

本质区别在于 HTML 生成的时机不同

渲染方式 生成时机 适合场景
SSR 每次请求 个性化数据
SSG 构建时 内容稳定
ISR 构建后增量 内容半实时

🔥 面试官追问:

ISR 是怎么做到"不重新构建"的?

✅ 你要答:

  • 第一次访问 → 用旧 HTML

  • 到期后 → 后台重新生成

  • 下次访问 → 新 HTML

📌 关键词一定要说:

stale-while-revalidate


2️⃣ 面试官:SSR 会不会拖慢服务器?

❌ 错误回答

会,很慢

✅ 正确回答

会增加服务器压力,但可通过缓存、CDN 缓解

你要提 3 点:

  1. 页面缓存

  2. 数据缓存

  3. CDN

🔥 加一句秒杀:

"SSR 性能问题不是不能用,而是要配合缓存策略。"


3️⃣ 面试官:Next.js 13 App Router 和 Pages Router 区别?

核心一句话

App Router 是 以 Server Components 为核心的架构升级


对比重点(面试必考)

Pages Router App Router
渲染模型 CSR/SSR RSC
数据获取 getServerSideProps fetch(服务端)
Layout 内置 Layout
Streaming

🔥 面试官爱听:

"App Router 减少 JS 体积,把计算前移到服务端。"


4️⃣ 面试官:Server Components 有什么优势?

你一定要说:

  • 不打包到客户端

  • 可直接访问数据库

  • 减少 JS 体积

  • 提升首屏性能

📌 禁忌点(一定要说你知道):

Server Component 不能用 useState/useEffect


二、React vs Next.js 项目选型模拟题(必过)

5️⃣ 面试官:一个后台系统,你选 React 还是 Next.js?

❌ 错误

都可以

✅ 正确

纯 React

理由(说 3 点):

  1. 不需要 SEO

  2. 页面多、交互复杂

  3. SSR 成本高、收益低


6️⃣ 面试官:一个官网 / ToC 产品?

✅ 标准答案:

Next.js

理由:

  • SEO

  • 首屏

  • 分享预览

  • 多终端访问


7️⃣ 面试官:一个混合项目怎么选?

🔥 高级回答(很加分):

后台:React

官网 / 营销页:Next.js

共享组件 & 设计体系

📌 体现你有架构思维


三、把你项目包装成 Next.js 面试亮点(直接可用)

下面我给你 "项目亮点 → 面试问题 → 标准答案"


亮点 1:SSR + SEO 优化

面试官:你为什么用 SSR?

✅ 回答模板:

我们首页和内容页对 SEO 要求高,用 SSR 输出完整 HTML,提高首屏和收录。


亮点 2:ISR 提升构建效率

面试官:为什么不用纯 SSG?

✅ 回答模板:

内容更新频繁,纯 SSG 构建成本高,用 ISR 实现增量更新。


亮点 3:Server Components 减少 JS 体积

面试官:RSC 带来了什么收益?

✅ 回答模板:

减少客户端 JS,首屏加载明显改善,复杂计算放在服务端。


亮点 4:API Routes / Server Actions

面试官:为什么不用单独后端?

✅ 回答模板:

作为 BFF 层,减少前后端通信复杂度,适合轻业务。


亮点 5:性能优化(必说)

你可以说你做了:

  • Image Optimization

  • Dynamic Import

  • Streaming

  • Prefetch

🔥 面试官爱听一句:

"Next.js 默认优化,但我们会针对业务再调优。"


四、面试最后总结

React 更适合复杂交互和后台系统,

Next.js 更适合首屏、SEO、对外产品。

👉「继续深挖 App Router / RSC」

相关推荐
泯泷9 小时前
第 2 篇:设计第一套字节码:Opcode、Instruction 与 Constant Pool
前端·javascript·安全
妙码生花9 小时前
从 PHP 到 AI + Golang,程序员自救转型手记(十五):优化细节、网络请求封装
前端·后端·ai编程
泯泷9 小时前
第 1 篇:从 1 + 2 开始:亲手写出第一台 JSVM
前端·javascript·安全
团团崽_七分甜9 小时前
Spring Boot 核心知识点总结
前端
lichenyang4539 小时前
从一个按钮开始,理解 ASCF 框架到底在做什么
前端
古夕9 小时前
第三方 SSO 接入实践:redirect_uri 编码、回调一致性与跨项目联调
前端·vue.js
朦胧之9 小时前
页面白屏卡住排查方法
前端·javascript
用户593608741409 小时前
Playwright 黑魔法:用 ClipboardEvent 绕过 React 富文本编辑器
前端
Ruihong10 小时前
Vue withDefaults 转 React:VuReact 怎么处理?
vue.js·react.js·面试
石山岭10 小时前
自己动手写了一个 Android 虚拟定位 App:GPSSimulate 技术实
android·前端