React团队宣布即将发布版本号为19.0.0的新版本,弥补了长达两年的更新间隔。期间,Canary版本中推出了一系列重大更新,如use、useOptimistic hook,use client、use server指令,这些更新丰富了React生态系统,推动了Next.js和Remix等全栈框架的迅速发展。v19版中,React团队将引入自动记忆化功能,这一革新将改变开发方式,使开发者在状态变化时自动且仅重新渲染必要的部分,取代现有的useMemo、useCallback和memo实现。团队在Instagram的生产环境中应用了此编译器,并计划在Meta更多平台中使用,并最终开源。这一功能是v19最令人期待的特点之一。React团队开发了名为React Actions的功能,它允许开发者通过函数将数据发送到DOM元素。这些函数可以同步或异步操作,如执行数据库变更或实现客户端到服务器的交互。使用Action时,React会管理数据提交的生命周期,并提供useFormStatus和useFormState两个hook来访问表单操作的当前状态和响应。Action与useFormStatus和useFormState或useOptimistic和useServer结合使用时,功能更为强大。在Canary版本中久经考验的use client和use server指令也即将加入到Stable版本中。这些指令标记了前端和服务端的“分割点”,为Next.js和Remix等全栈框架设计,普通开发者在使用React开发应用时通常不会用到它们。了解use client和use server的作用对于开发者而言至关重要,它们帮助开发者区分应用的客户端和服务器端环境。