Null
, 130 | }); 131 | } 132 | }, [rectList, setInspectorDataAtom]) 133 | } -------------------------------------------------------------------------------- /app/routes/_index.tsx: -------------------------------------------------------------------------------- 1 | import type { MetaFunction } from "@remix-run/node"; 2 | 3 | export const meta: MetaFunction = () => { 4 | return [ 5 | { title: "New Remix App" }, 6 | { name: "description", content: "Welcome to Remix!" }, 7 | ]; 8 | }; 9 | 10 | export default function Index() { 11 | return ( 12 |
24 |
29 | Loading ...
; 87 | } 88 | 89 | // Only render after hydration 90 | const Viewport = () => { 91 | const [gpuIsSupported, setGpuIsSupported] = useAtom(gpuIsSupportedAtom); 92 | const [canvasError, setCanvasError] = React.useState
147 |
150 | {canvasError}
151 |