0.0.9.0
This commit is contained in:
+18
-1
@@ -4,11 +4,14 @@ import { useFamily } from "@/context/family-context"
|
||||
import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"
|
||||
import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"
|
||||
import { ScrollArea } from "@/components/ui/scroll-area"
|
||||
import { Clock, Map as MapIcon, ArrowRight, Calendar } from "lucide-react"
|
||||
import { Clock, Map as MapIcon, ArrowRight, Calendar, User } from 'lucide-react'
|
||||
import dynamic from 'next/dynamic'
|
||||
import { useMemo, useEffect, useState } from 'react'
|
||||
import * as echarts from 'echarts'
|
||||
import { MemberNameWithStatus } from "@/components/member-name-with-status"
|
||||
import { useSession } from 'next-auth/react'
|
||||
import { EmptyStateBadge } from '@/components/empty-state-badge'
|
||||
import { useRouter } from 'next/navigation'
|
||||
|
||||
const ReactECharts = dynamic(() => import('echarts-for-react'), { ssr: false })
|
||||
|
||||
@@ -186,9 +189,18 @@ const geoCoordMap: Record<string, [number, number]> = {
|
||||
|
||||
export default function TimelinePage() {
|
||||
const { treeData, currentTree, getMember, isLoading } = useFamily()
|
||||
const { data: session, status } = useSession()
|
||||
const members = Object.values(treeData.members)
|
||||
const [mapLoaded, setMapLoaded] = useState(false)
|
||||
const treeId = currentTree?.id
|
||||
const router = useRouter()
|
||||
|
||||
// 未登录时重定向到登录页
|
||||
useEffect(() => {
|
||||
if (status === 'unauthenticated') {
|
||||
router.push('/auth/signin')
|
||||
}
|
||||
}, [status, router])
|
||||
|
||||
// 注册中国地图 - 从外部文件加载完整数据(必须在条件渲染之前)
|
||||
useEffect(() => {
|
||||
@@ -470,6 +482,11 @@ export default function TimelinePage() {
|
||||
}
|
||||
}, [migrations])
|
||||
|
||||
// 未登录时不渲染内容(已在 useEffect 中重定向)
|
||||
if (status === 'loading' || !session) {
|
||||
return null
|
||||
}
|
||||
|
||||
// 显示加载状态
|
||||
if (isLoading) {
|
||||
return (
|
||||
|
||||
Reference in New Issue
Block a user