为什么要在水合前工作
流式SSR在首次绘制与水合之间留有空窗期,每个延迟加载的Suspense边界都有一个。此时,基于useState的折叠面板虽然可见,却无法交互;基于<details>的则已经能够使用。
44个组件中,29个属于Tier 0:不提供任何客户端JavaScript,并在禁用脚本时通过完整交互测试套件。其余组件均记录了代码成本和水合前的行为。
适用场景
适合:服务端渲染、水合前即可使用的页面,以及自定义样式。组件提供语义化标记和有文档说明的data-*契约,不附带视觉样式。
不适合:开箱即用的成套主题UI,或纯客户端应用——优先依赖水合的组件库更适合这类需求。
组织方式
五层分别是hooks、core、elements、components和可选的styles,各自独立发布,均不导入上层。组件默认是Server Component;每个客户端边界都在导入路径中明确体现。