React 19.3 于 9 月 9 日发布,新增 react-dom 的 browser() API,让组件可以声明式地跳过服务器端渲染。该 API 针对 SSR 中长期存在的痛点:读取 localStorage、window 或设备时区等浏览器专属信息的组件无法在服务端生成有意义的 HTML,而以往通过 mounted 标志或 typeof window 判断来规避,容易引发水合不匹配。新方案与 use() 协同工作,服务端渲染时暂停组件并保留最近的 Suspense 边界备用内容,浏览器端返回 undefined 后正常渲染;同时提供 onBrowserBailout 回调与 reason 参数,便于定位跳过位置。相比 Next.js 的 dynamic 和 Astro 的 client:only,browser() 内置于 React,适用于任意 SSR 配置,被社区评价为处理条件性数据获取的优雅方案。目前该 API 仍标记为仅限 Canary 通道,生产使用前需确认发布通道。
📱 每天一份 AI 前沿日报
关注公众号,每天 09:00 推送 · 不错过任何重磅