bill 10 月之前
父节点
当前提交
ccc747753f
共有 1 个文件被更改,包括 12 次插入16 次删除
  1. 12 16
      src/sdk/association/index.ts

+ 12 - 16
src/sdk/association/index.ts

@@ -19,19 +19,6 @@ export const getSupperPanoModel = () => {
     if (!sdk) return;
     clearInterval(interval);
 
-    let prevActive: SceneModel | undefined = undefined
-    const setActive = (active: SceneModel | undefined) => {
-      if (prevActive === active) return;
-      if (prevActive) {
-        prevActive!.bus.off('transformChanged', update)
-      }
-      if (active) {
-        active.bus.on('transformChanged', update)
-      }
-      prevActive = active;
-    }
-
-
     const update = () => {
       const data = sdk.canTurnToPanoMode();
       if (data?.model) {
@@ -40,11 +27,20 @@ export const getSupperPanoModel = () => {
       } else {
         supperModel.value = null;
       }
-      setActive(data?.model)
     }
-
+    watchEffect((onCleanup) => {
+      const smodels = [...sceneModelMap.values()]
+      console.log(smodels)
+      smodels.forEach(smodel => {
+        smodel.bus.on('transformChanged', update)
+      })
+      onCleanup(() => {
+        smodels.forEach(smodel => {
+          smodel.bus.off('transformChanged', update)
+        })
+      })
+    })
     sdk.sceneBus.on("cameraChange", update);
-    
   }, 16);
 
   return supperModel;