跳到主要内容

一、核型概念

1. 环境差异

  • Node.js : 传统服务端渲染(有完整的 Node API)
  • Edge Runtime : 轻量级边缘计算环境(如 Vercel Edge、 cloudflare Workers)
  • Bun : 新兴 JS 运行时
  • Browser : 客户端浏览器环境
  • React Server Components(RSC) : React 服务端组件专用环境

2. 渲染模式

  • SSR(Server-Side Rendering) : 动态服务端渲染(server 标识)
  • SSG(Static Site Generation) : 静态生成(static 标识)
  • RSC(React Server Components) : 服务端组件流式渲染

二、优点

分类目的
多环境兼容 Node.js/Edge/Bun/Browser 等运行时
多模式分离 SSR/SSG/RSC 的渲染逻辑
性能精简客户端 bundle ,避免冗余代码
扩展性便于支持新运行时或渲染策略
  • 环境适配
    • Edge Runtime/Bun 不支持 Node.js API (如 Buffer) ,需定制实现
    • 浏览器环境需避免使用 Node.js 依赖
  • 性能优化
    • 按需加载: 避免向客户端发送服务器专用代码
    • Tree SHaking: 打包工具可剔除未使用的环境代码
  • 渲染模式隔离
    • SSR 需要处理流式传输、水合(hydration)
    • SSG 需预渲染静态 HTML
    • RSC 需支持组件级流式渲染和共享状态