服务端渲染 #
一、渲染模式 #
1.1 可用渲染模式 #
text
渲染模式
├── SSR 服务端渲染(默认)
├── CSR 客户端渲染
├── SSG 静态站点生成
└── Hybrid 混合渲染
1.2 配置渲染模式 #
tsx
// SSR(默认)
export default function Page() {
return <h1>Server Rendered</h1>;
}
// CSR
export const csr = true;
export default function ClientPage() {
return <h1>Client Rendered</h1>;
}
// SSG
export const prerender = true;
export default function StaticPage() {
return <h1>Static Generated</h1>;
}
二、Head 管理 #
2.1 设置页面标题 #
tsx
import { Title } from 'solid-start';
export default function Page() {
return (
<>
<Title>Page Title</Title>
<h1>Content</h1>
</>
);
}
2.2 Meta 标签 #
tsx
import { Meta, Title } from 'solid-start';
export default function Page() {
return (
<>
<Title>Page Title</Title>
<Meta name="description" content="Page description" />
<Meta property="og:title" content="OG Title" />
<h1>Content</h1>
</>
);
}
三、流式渲染 #
3.1 使用 Suspense #
tsx
import { Suspense } from 'solid-js';
export default function Page() {
const [data] = createResource(fetchData);
return (
<Suspense fallback={<p>Loading...</p>}>
<DataDisplay data={data()} />
</Suspense>
);
}
四、部署 #
4.1 构建命令 #
bash
# 构建
npm run build
# 预览
npm run start
4.2 部署适配器 #
ts
// app.config.ts
import { defineConfig } from '@solidjs/start/config';
import netlify from '@solidjs/start/netlify';
export default defineConfig({
adapter: netlify()
});
五、总结 #
5.1 渲染模式选择 #
| 场景 | 推荐模式 |
|---|---|
| 内容网站 | SSR/SSG |
| 应用型 | SSR |
| 管理后台 | CSR |
| 博客 | SSG |
5.2 最佳实践 #
- 默认使用 SSR
- 使用 Title 和 Meta 优化 SEO
- 使用 Suspense 实现流式渲染
- 根据场景选择渲染模式
最后更新:2026-03-28