97054a9699
- user 端:课程/活动/报名/测评/政策/调研 - 后端已并入 server-core/app/training,/api/* 走 opc.pinesound.cn
17 lines
1.1 KiB
JavaScript
17 lines
1.1 KiB
JavaScript
import { createServer } from 'vite';
|
|
import React from 'react';
|
|
import { renderToString } from 'react-dom/server';
|
|
globalThis.window = globalThis.window || { matchMedia: () => ({ matches: false }), innerWidth: 1024, scrollTo() {} };
|
|
globalThis.document = globalThis.document || { getElementById: () => null, querySelector: () => null };
|
|
const server = await createServer({ server: { middlewareMode: true }, appType: 'custom', logLevel: 'error' });
|
|
const results = [];
|
|
try {
|
|
const home = await server.ssrLoadModule('/src/pages/Home.jsx');
|
|
const h = renderToString(React.createElement(home.default));
|
|
results.push(['Home(公开)渲染', h.includes('ONE PERSON') && h.includes('DESIGNED TO EVOLVE') && h.includes('滚动开班') && h.includes('先测评,再报名')]);
|
|
results.push(['Home 不再指向内部页', !h.includes('#/system') && !h.includes('#/tools') && !h.includes('#/schedule') && !h.includes('#/pine')]);
|
|
} catch (e) { console.error('SSR ERROR:', e.message); process.exit(1); }
|
|
finally { await server.close(); }
|
|
results.forEach(([n, ok]) => console.log(ok ? '✓' : '✗', n));
|
|
process.exit(results.every(([, ok]) => ok) ? 0 : 1);
|