"use client"; import { useContext, useEffect, useRef } from "react"; import { SceneView } from "../three/SceneView"; import { SceneViewContext, SceneViewContextType, } from "../providers/scene-view-provider"; export function Map() { const divRef = useRef(null); const { setSceneView } = useContext(SceneViewContext) as SceneViewContextType; useEffect(() => { let ignore = false; if (!divRef.current) return; async function loadScene() { if (divRef.current) { const _sceneView = await SceneView.create(divRef.current, "20"); if (_sceneView) { setSceneView(_sceneView); } } } if (!ignore) { loadScene(); } return () => { ignore = true; }; }, [divRef]); return (
); }