现代 React Web 开发实战
宋一玮
FreeWheel 中国研发中心前端架构师
17530 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 35 讲
现代 React Web 开发实战
15
15
1.0x
00:00/00:00
登录|注册

SSR、Next.js与服务器组件

你好,我是宋一玮,欢迎回到 React 应用开发的学习。
上节课我们回顾了 React 的 Suspense 与组件的懒加载,介绍了 React 19 新 API use 的两种用法 use(Promise)use(Context) ,还有refforwardRef 的变化,以及 JSX 中新支持的 HTML 标签<title><link><meta><style><script>
可能你已经注意到了,前两节课在介绍 React 19 新功能之前,我都会介绍必要的背景知识,比如介绍 action 之前先补充 transition 的知识,介绍 use(Promise) 之前先回顾了 Suspense 的知识。这符合本专栏一贯的讲解思路,即帮助你在学习新功能、新 API 的同时,了解它们能解决什么样的问题,并强调知识点之间的相关性。
这节课作为 React 19 新功能系列加餐中的最后一节,将聚焦 React 19 在服务器端的两大重量级新功能:服务器组件和服务器 action。延续之前的讲解思路,我们接下来会先讲解服务器端渲染 SSR 是什么,为什么要在服务器端跑 React,并简要介绍 React SSR 首选的全栈开发框架 Next.js。

服务器端渲染 SSR

随着 React 项目规模的扩大和依赖项的增加,生产环境构建的产物,尤其是*.js 文件体积会逐渐增大。我就经手过单个 JS 文件达到 10MB 以上的项目,这文件还是经过代码压缩的。这样的大文件会导致用户浏览器加载应用时,需要长时间面对白屏,不利于用户体验(如下图所示)。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
  • 解释
  • 总结

1. 服务器端渲染(SSR)对用户体验和搜索引擎优化(SEO)有积极影响,适用于单页应用(SPA)。 2. SSR、客户端渲染(CSR)和静态站点生成(SSG)在渲染位置、加载性能、SEO、开发难度等方面有不同特点。 3. Next.js框架是基于React的全栈Web开发框架,支持服务器端渲染React组件、内建的代码构建功能、各种主流CSS方案、获取服务器端数据等。 4. Next.js整合了多种框架和库,简化了技术选型的工作,但在部署上线时需要将整个Next.js应用部署为Web服务器。 5. React官方鼓励使用基于React的全栈框架,如Next.js、Remix或Gatsby来开始一个React项目。 6. Next.js项目创建和传统React项目创建有所不同,Next.js渲染的首页HTML代码中包含了对应实际内容的静态HTML标签,有利于提高用户体验。 7. 服务器组件是React 19新增的特性,只在服务器端运行,不包含状态,不能在服务器组件中使用任何交互性的Hooks或JS代码。 8. 服务器组件与客户端组件之间可以通过props通信,客户端组件的子组件可以是服务器组件也可以是客户端组件,通过 `children` prop,将服务器组件传递给客户端组件. 9. React 19的服务器组件和服务器action带来了前端开发范式的变化,让SSR的功用更上一层楼。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《现代 React Web 开发实战》
新⼈⾸单¥59
立即购买
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
显示
设置
留言
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部