Explorar o código

fix: sqlite wasm path on Electron

Tienson Qin hai 1 ano
pai
achega
9f7599b9fd

+ 5 - 2
src/main/frontend/db_worker.cljs

@@ -34,8 +34,11 @@
 (defn- init-sqlite-module!
   []
   (when-not @*sqlite
-    (p/let [base-url (str js/self.location.protocol "//" js/self.location.host)
-            sqlite-wasm-url (str base-url "/js/")
+    (p/let [electron? (string/includes? (.. js/location -href) "electron=true")
+            base-url (str js/self.location.protocol "//" js/self.location.host)
+            sqlite-wasm-url (if electron?
+                              (js/URL. "sqlite3.wasm" (.. js/location -href))
+                              (str base-url "/js/"))
             sqlite (sqlite3InitModule (clj->js {:url sqlite-wasm-url
                                                 :print js/console.log
                                                 :printErr js/console.error}))]

+ 1 - 1
src/main/frontend/persist_db/browser.cljs

@@ -20,7 +20,7 @@
     (let [worker-url (if (util/electron?)
                        "js/db-worker.js"
                        "/static/js/db-worker.js")
-          worker (js/Worker. worker-url)
+          worker (js/Worker. (str worker-url "?electron=" (util/electron?)))
           sqlite (Comlink/wrap worker)]
       (reset! *sqlite sqlite)
       (p/let [opfs-supported? (.supportOPFS sqlite)]