先看全景图:
观众输入 URL / 点击链接 / 提交表单
|
v
┌───────────────────┐
│ 文件系统路由 │
│ src/routes │
└─────────┬─────────┘
|
┌───────────┴───────────┐
| |
v v
┌───────────────┐ ┌────────────────┐
│ hooks.server │ │ page options │
│ 总控室验票/鉴权 │ │ SSR/CSR/预渲染策略 │
└───────┬───────┘ └────────────────┘
|
v
┌──────────────────────────────────────┐
│ +layout.server / +page.server load │
│ 后台只在服务端调道具、查票务、拿私密数据 │
└────────────────┬─────────────────────┘
|
v
┌──────────────────────────────────────┐
│ +layout / +page │
│ 真正登台的场景组件 │
└────────────────┬─────────────────────┘
|
v
首次 SSR 输出 HTML
|
v
浏览器 hydration 接管
|
┌──────────┴──────────┐
| |
v v
<a> 导航换景 <form> 提交
| |
v v
load 重新调度 actions / +server
| |
v v
前后台继续协作 返回新数据/错误/跳转如果你只记一句:
SvelteKit 的本质,不是“页面框架”,而是“剧场级请求到渲染调度器”。