- 初始化Qwik项目:
- 使用
npm create qwik@latest
命令创建一个新的Qwik项目。按照提示输入项目名称等信息,这会生成一个基础的Qwik项目结构。
- 配置SSR:
- 关键文件与配置:
vite.config.ts
:在这个文件中,需要对Vite进行配置以支持SSR。通常,Qwik项目生成时已经包含了基本的SSR配置。但可能需要根据具体需求调整,例如添加自定义插件等。比如,如果要使用特定的SSR优化插件,可以在这里引入并配置。
entry.ssr.tsx
:这是SSR的入口文件。在这个文件中,主要工作是创建一个Qwik的renderToNodeStream
渲染函数。例如:
import { renderToNodeStream } from '@builder.io/qwik/server';
import { createQwikCity } from '@builder.io/qwik-city/middleware/node';
import { App } from '../src/App';
export default createQwikCity(() => renderToNodeStream(App));
- 服务器端配置:
- 如果使用Node.js作为服务器(常见情况),需要在服务器端代码中集成SSR。例如,在一个简单的Node.js Express服务器中,可以这样集成:
const express = require('express');
const { qwikCity } = require('@builder.io/qwik-city/middleware/node');
const { join } = require('path');
const app = express();
const distDir = join(process.cwd(), 'dist');
app.use(qwikCity({ distDir }));
const port = process.env.PORT || 3000;
app.listen(port, () => {
console.log(`Server running on port ${port}`);
});
- 构建与部署:
- 构建:使用
npm run build
命令构建项目。这个命令会生成用于SSR的优化后的代码,包括打包客户端和服务器端代码等。
- 部署:将构建后的产物部署到服务器上。如果是Node.js服务器,确保服务器环境配置正确,并且可以正确访问构建后的文件路径。在部署到生产环境时,还需要考虑负载均衡、缓存等性能优化措施。