import React, { useEffect, useRef } from 'react'; import Engine from '../../../engine'; import useEngine from '../../../hooks/useEngine'; import { RankingTrackProps } from '../../../model/rankingTrack'; const setupRanking = async (engine: Engine): Promise => { await engine.setupScene(); setTimeout(engine.setupRenderLoop, 0); }; const DynamicRanking: React.FC = (props) => { const { teams } = props; const [engine, canvasRef] = useEngine(true); const teamsRefs = new Array(teams.length) .fill(1) .map(() => useRef()); useEffect((): void => { if (engine) { engine.rankingProps = props; engine.teamsRefs = teamsRefs; setupRanking(engine); } }, [engine]); if (engine) { engine.teamsRefs = teamsRefs; } return (
{teams.map((x, i) => (
{x.position + 1}
))}
); }; export default DynamicRanking;