服务端渲染 #

一、渲染模式 #

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 最佳实践 #

  1. 默认使用 SSR
  2. 使用 Title 和 Meta 优化 SEO
  3. 使用 Suspense 实现流式渲染
  4. 根据场景选择渲染模式
最后更新:2026-03-28