Spaces:
Running
Running
File size: 1,209 Bytes
d61897b 363c51a 213d393 68fdb58 d61897b 363c51a d61897b 363c51a | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | import { lazy, Suspense, useEffect, useState } from 'react'
const Debug = lazy(() => import('./video/Debug'))
const TDebug = lazy(() => import('./video/TDebug'))
const ADebug = lazy(() => import('./video/ADebug'))
const XDebug = lazy(() => import('./video/XDebug'))
const Studio = lazy(() => import('./video/Studio'))
function Splash() {
return (
<div className="min-h-screen bg-[#04080f] flex items-center justify-center text-cyan-200 text-sm tracking-widest">
腱鞘炎 · 3D 医学科普动画 加载中…
</div>
)
}
export default function App() {
const [q, setQ] = useState<URLSearchParams | null>(null)
useEffect(() => { setQ(new URLSearchParams(window.location.search)); document.title = '腱鞘炎 · 3D 医学科普动画'; document.documentElement.lang = 'zh-CN' }, [])
if (!q) return <Splash />
if (q.has('debug')) return <Suspense fallback={null}><Debug /></Suspense>
if (q.has('tdebug')) return <Suspense fallback={null}><TDebug /></Suspense>
if (q.has('adebug')) return <Suspense fallback={null}><ADebug /></Suspense>
if (q.has('xdebug')) return <Suspense fallback={null}><XDebug /></Suspense>
return <Suspense fallback={<Splash />}><Studio /></Suspense>
}
|