vite.config 接入 vike 插件并改产出 dist/client+dist/server;feed 白名单 route 匹配 /、/board/:id、/post/:id(.html);spa catch-all ssr:false;onRenderHtml renderToReadableStream 等 allReady 输出完整 HTML 并带主题/缩放脚本;onRenderClient 沿用样式表等待+冷启动预热+hydrate 回退;getHomeStoreState 作用域 + hydrating 变体入 RequestScope;删除 index.html 与 main.tsx
11 lines
360 B
TypeScript
11 lines
360 B
TypeScript
import App from '../../src/App';
|
|
import type { PageContext } from 'vike/types';
|
|
|
|
export { Page };
|
|
|
|
/** SSR feed 页:服务端渲染整棵 react-router 树,客户端 hydrate 后接管导航 */
|
|
function Page(pageContext: PageContext) {
|
|
const { pathname, searchOriginal } = pageContext.urlParsed;
|
|
return <App url={pathname + (searchOriginal ?? '')} />;
|
|
}
|