Просмотр исходного кода

fix: don't send pixi exceptions to sentry

Tienson Qin 2 лет назад
Родитель
Сommit
7cb8d61347
1 измененных файлов с 22 добавлено и 14 удалено
  1. 22 14
      src/main/frontend/extensions/graph/pixi.cljs

+ 22 - 14
src/main/frontend/extensions/graph/pixi.cljs

@@ -99,24 +99,32 @@
 
 
 (defn- update-position!
 (defn- update-position!
   [node obj]
   [node obj]
-  (.updatePosition node #js {:x (.-x obj)
-                             :y (.-y obj)}))
+  (when node
+    (try
+      (.updatePosition node #js {:x (.-x obj)
+                                 :y (.-y obj)})
+      (catch :default e
+        (js/console.error e)))))
 
 
 (defn- tick!
 (defn- tick!
   [pixi _graph nodes-js links-js]
   [pixi _graph nodes-js links-js]
   (fn []
   (fn []
-    (let [nodes-objects (.getNodesObjects pixi)
-          edges-objects (.getEdgesObjects pixi)]
-      (doseq [node nodes-js]
-        (when-let [node-object (.get nodes-objects (.-id node))]
-          (update-position! node-object node)))
-      (doseq [edge links-js]
-        (when-let [edge-object (.get edges-objects (str (.-index edge)))]
-          (.updatePosition edge-object
-                           #js {:x (.-x (.-source edge))
-                                :y (.-y (.-source edge))}
-                           #js {:x (.-x (.-target edge))
-                                :y (.-y (.-target edge))}))))))
+    (try
+      (let [nodes-objects (.getNodesObjects pixi)
+            edges-objects (.getEdgesObjects pixi)]
+        (doseq [node nodes-js]
+          (when-let [node-object (.get nodes-objects (.-id node))]
+            (update-position! node-object node)))
+        (doseq [edge links-js]
+          (when-let [edge-object (.get edges-objects (str (.-index edge)))]
+            (.updatePosition edge-object
+                             #js {:x (.-x (.-source edge))
+                                  :y (.-y (.-source edge))}
+                             #js {:x (.-x (.-target edge))
+                                  :y (.-y (.-target edge))}))))
+      (catch :default e
+        (js/console.error e)
+        nil))))
 
 
 (defn- set-up-listeners!
 (defn- set-up-listeners!
   [pixi-graph]
   [pixi-graph]