/
githubmirror
/
pixijs
Обзор
Документация
Войти
/
githubmirror
/
pixijs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
playground/src/hooks/useBuildStatus.ts
59 строк
2 KB
Mat Groves
chore: Add PixiJS development playground (#11878)
12 фев 2026, 18:26
Не верифицирован
12 фев 2026, 18:26
d0c73cf
Код
Авторство
О чём код?
import { useEffect, useState } from 'preact/hooks'; export type BuildStatus = 'compiling' | 'ready' | 'error'; export function useBuildStatus(): BuildStatus { const [status, setStatus] = useState<BuildStatus>('ready'); useEffect(() => { let lastStatus = ''; const check = async () => { try { const res = await fetch(`/.build-status.json?${Date.now()}`); if (res.ok) { const data = await res.json(); const newStatus = data.status as string; if (newStatus !== lastStatus) { const wasCompiling = lastStatus === 'compiling'; lastStatus = newStatus; if (newStatus === 'compiling' || newStatus === 'ready' || newStatus === 'error') { setStatus(newStatus); } if (newStatus === 'ready' && wasCompiling) { setTimeout(() => window.location.reload(), 500); } } } } catch { if (lastStatus !== 'ready') { lastStatus = 'ready'; setStatus('ready'); } } }; void check(); const id = setInterval(check, 2000); return () => clearInterval(id); }, []); return status; }