Living note

服务端与客户端渲染边界

在 Next.js 应用中放置数据、状态与交互逻辑的决策指南。

默认让服务端拥有数据与标记,只把依赖浏览器的状态移动到客户端边界。

保持客户端岛屿紧凑

把可序列化值传入聚焦的交互组件,避免把整个页面都变成客户端组件。

note-shell.tsxTSX
export async function NoteShell() {
  const note = await getNote();
  return <NoteActions noteId={note.id} />;
}

有理由地跨越边界

  • 本地交互状态
  • 仅浏览器可用的 API
  • 事件处理与乐观更新