diff --git a/app/components/SessionCard.tsx b/app/components/SessionCard.tsx index 178cb78..4055aed 100644 --- a/app/components/SessionCard.tsx +++ b/app/components/SessionCard.tsx @@ -21,7 +21,7 @@ function getMockForSession(sessionId: string) { function AvatarItem({ joiner }: { joiner: { name?: string; nickname?: string; avatar?: string; xiaohongshu_url?: string } }) { const [imgError, setImgError] = useState(false); - const nickname = "name" in joiner ? joiner.name : joiner.nickname ?? ""; + const nickname = ("name" in joiner ? joiner.name : joiner.nickname) ?? ""; const avatar = joiner.avatar; const xhUrl = joiner.xiaohongshu_url; const showAvatar = avatar && avatar.length > 0 && !imgError; diff --git a/app/hooks/useXhClickOpener.ts b/app/hooks/useXhClickOpener.ts index 9807d7a..83d1377 100644 --- a/app/hooks/useXhClickOpener.ts +++ b/app/hooks/useXhClickOpener.ts @@ -6,7 +6,7 @@ const CLICK_THRESHOLD = 5; /** 连续点击 5 次打开小红书主页 */ export function useXhClickOpener(xhUrl: string | undefined) { const countRef = useRef(0); - const timerRef = useRef>(); + const timerRef = useRef | undefined>(undefined); return useCallback( (e: React.MouseEvent) => {