feat: 处理用户登出事件

This commit is contained in:
zdl
2025-11-19 15:57:00 +08:00
parent 8fa273c8d4
commit bb28e141e6

View File

@@ -5,6 +5,7 @@ import { useToast } from '@chakra-ui/react';
import { logger } from '../utils/logger'; import { logger } from '../utils/logger';
import { useNotification } from '../contexts/NotificationContext'; import { useNotification } from '../contexts/NotificationContext';
import { identifyUser, resetUser, trackEvent } from '@lib/posthog'; import { identifyUser, resetUser, trackEvent } from '@lib/posthog';
import { SPECIAL_EVENTS } from '@lib/constants';
// 创建认证上下文 // 创建认证上下文
const AuthContext = createContext(); const AuthContext = createContext();
@@ -467,8 +468,12 @@ export const AuthProvider = ({ children }) => {
}); });
// ✅ 追踪登出事件(必须在 resetUser() 之前,否则会丢失用户身份) // ✅ 追踪登出事件(必须在 resetUser() 之前,否则会丢失用户身份)
trackEvent('user_logged_out', { trackEvent(SPECIAL_EVENTS.USER_LOGGED_OUT, {
timestamp: new Date().toISOString() timestamp: new Date().toISOString(),
user_id: user?.id || null,
session_duration_minutes: user?.session_start
? Math.round((Date.now() - new Date(user.session_start).getTime()) / 60000)
: null,
}); });
// ✅ 重置 PostHog 用户会话 // ✅ 重置 PostHog 用户会话