我想將畫布集成到我的 React 應用程序中。const Comp = () => { const ref = useRef(); let canvasCtx = null; useEffect(() => { canvasCtx = ref.current.getContext('2d'); }); return ( <div> <canvas ref={ref} width="800" height="800"> </canvas> <Circle ctx={canvasCtx}></Circle> </div> );};問題是我需要canvas先安裝元素,然后才能獲取上下文。孩子Circle需要上下文才能工作。這是Circle代碼(現在還不是一個圈子……)const Circle = ({ ctx }) => { if (ctx) { ctx.fillRect(25, 25, 100, 100); ctx.clearRect(45, 45, 60, 60); ctx.strokeRect(50, 50, 50, 50); } return null;};不幸的是,條件永遠不會成立。我如何確保孩子們在canvasCtx準備好后得到更新?
反應和畫布反應性
智慧大石
2022-06-09 16:17:13