Files
jiang13-forum/frontend/src/utils/homeHydrate.ts
freefire 44eed97fe0 feat: 首页 Go SSR 与 React hydrate 同构,消壳层与帖行闪动
补齐侧栏/右栏图标与徽章、鉴权种子、StaticFeedList,并修正嵌套 a 与标题徽章对齐。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-01 07:07:38 +08:00

42 lines
756 B
TypeScript

/** 首页 SSR hydrate 首帧同构标志(仅 / 与板块首页) */
declare global {
interface Window {
__J13_HYDRATING_HOME__?: boolean;
}
}
let hydrating = false;
export function beginHomeHydrate() {
hydrating = true;
try {
window.__J13_HYDRATING_HOME__ = true;
} catch {
/* ignore */
}
}
export function endHomeHydrate() {
hydrating = false;
try {
delete window.__J13_HYDRATING_HOME__;
} catch {
try {
window.__J13_HYDRATING_HOME__ = undefined;
} catch {
/* ignore */
}
}
}
/** 首帧是否必须与 Go SSR DOM 同构 */
export function isHomeHydrating(): boolean {
if (hydrating) return true;
try {
return !!window.__J13_HYDRATING_HOME__;
} catch {
return false;
}
}