feat: 实时消息与管理端运营能力
新增群聊/私信与公共 WebSocket 总线,站长用户内容档案,并将通知与待审角标改为推送驱动;同步精简管理仪表盘并修复主题换肤 DOM 冲突。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
18
frontend/components/RealtimeProvider.tsx
Normal file
18
frontend/components/RealtimeProvider.tsx
Normal file
@@ -0,0 +1,18 @@
|
||||
"use client";
|
||||
|
||||
import { useEffect } from "react";
|
||||
import { realtime } from "@/lib/realtime";
|
||||
|
||||
// 实时总线生命周期:登录即连、登出即断;连接/重连/心跳全部封装在 lib/realtime。
|
||||
// 挂在持久 root layout 上,全标签页只维护一条 WebSocket。
|
||||
export default function RealtimeProvider({ userId }: { userId: number | null }) {
|
||||
useEffect(() => {
|
||||
if (userId) {
|
||||
realtime.connect();
|
||||
return () => realtime.disconnect();
|
||||
}
|
||||
realtime.disconnect();
|
||||
}, [userId]);
|
||||
|
||||
return null;
|
||||
}
|
||||
Reference in New Issue
Block a user