发布于 2026-01-06 2 阅读
0

React v19 发布啦!DEV 全球展示挑战赛由 Mux 主办:快来展示你的项目吧!

React v19 发布啦!

由 Mux 主办的 DEV 全球展示挑战赛:展示你的项目!

最后!!

React 19 的发布带来了一系列旨在提升开发速度和直观性的改进。它引入了能够更自然地处理异步代码的新 API,并优化了现有工具,帮助开发者编写更简洁的代码。经验丰富的用户会发现更多实用的 Hook 和更优异的性能,而新手用户则会发现更简单的代码模式。

您可以在这里阅读更多关于 React 的信息:https://react.dev/blog/2024/12/05/react-19

React v19 已在 npm 上发布:https://www.npmjs.com/package/react

开始使用:(立即安装 React v19)

npm i react
Enter fullscreen mode Exit fullscreen mode

React 19 降低了处理异步任务、服务器交互和状态管理的难度。开发者可以专注于构建卓越的用户体验,而无需被复杂性所困扰。

React 19 的新特性

React 19 的新特性

简化操作

React 19 引入了一种在页面过渡期间处理异步函数的新方法,称为Actions。这些函数使 React 能够自动管理待处理状态、错误和乐观更新。以下是 Actions 带来变革性影响的原因:

  • 自动状态管理:React 在后台处理 pending 和 error 状态,减少样板代码。

  • UI 一致性:如果发生错误,React 可以将 UI 恢复到其原始状态,从而确保流畅的用户体验。

  • 改进的表单处理:现在可以将函数传递给 `<form>` <form>、`<form> <input>` 和<button>`<form>` 元素的 `action` 和 `formAction` 属性。表单可以自动管理提交、重置和错误,无需手动跟踪状态。

用于直观状态管理的新钩子

  1. useActionState
    • 简化异步操作的处理。
    • 返回当前错误状态、提交函数和待处理状态。
    • 使代码更简洁、更易于维护。
  2. useOptimistic
    • 启用乐观的 UI 更新,以便立即获得视觉反馈。
    • 让用户在等待服务器响应的同时,能够立即看到更改。
    • 操作完成后自动恢复到实际状态。
  3. useFormStatus
    • 允许子组件读取父组件的状态,而无需通过 prop 层层调用。
    • 帮助设计系统更轻松地管理与表单相关的状态。

特征

图片来源:React.dev

增强的 React DOM 功能

  • 服务器端渲染增强:react-dom/static 中的新预渲染和prerenderToNodeStreamAPI 允许在生成最终 HTML 之前加载数据。这确保了服务器渲染的内容能够立即在客户端上显示。
  • 改进的表单状态访问:
useFormStatus无需通过多个 props 传递表单状态,简化了组件层次结构。

React 服务器组件的进展

React 服务器组件现已包含在稳定版本中。它们使开发人员能够更无缝地将服务器逻辑与 UI 代码集成。

  • 服务器端操作:这些操作通过“use server”定义,允许客户端组件轻松执行服务器端函数。React 处理服务器与客户端通信的复杂性,使开发更加直接。

其他值得注意的改进

React 19 引入了多项更新,以提高灵活性并简化开发:

  • 将 ref作为 Prop:函数组件现在可以直接接受 ref 作为 prop,从而在很多情况下减少了对 forwardRef 的需求。
  • 增强的Hydration错误报告:当发生hydration错误时,React会提供详细的差异,使调试和修复问题变得更加容易。
  • 作为提供程序:开发者现在可以直接作为提供程序进行渲染,从而简化上下文的使用。
  • ref回调的清理函数:ref 回调现在支持清理函数,从而在组件卸载时实现更精确的资源管理。

如需查看包含代码示例的完整功能列表,请访问:

React v18 和 v19 之间间隔了这么长时间。让我们来探索一下这些新特性,看看人们会用它们构建什么。


感谢阅读。我的项目需要您的支持🙏🏻

我一直在尝试开发一个开源的简历制作平台,叫做“简历匹配器”(Resume Matcher)。如果您能在GitHub上给它点个赞🌟,加入社区,并帮助我完善它,我将不胜感激。🥹💕

简历匹配器

GitHub:https://github.com/srbhr/Resume-Matcher
Discord: https: //discord.gg/t3Y9HEuV34

🌟 GitHub 上的简历匹配器

如果你喜欢这篇文章,请在DEV上关注我,Saurabh💖。

请在 GitHub 上关注我。

文章来源:https://dev.to/srbhr/react-v19-is-out-2eo2