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

enhance: display error message when write failed

Tienson Qin 4 лет назад
Родитель
Сommit
700ff65c46
1 измененных файлов с 7 добавлено и 1 удалено
  1. 7 1
      src/main/frontend/modules/outliner/file.cljs

+ 7 - 1
src/main/frontend/modules/outliner/file.cljs

@@ -5,7 +5,9 @@
             [frontend.modules.file.core :as file]
             [frontend.modules.file.core :as file]
             [lambdaisland.glogi :as log]
             [lambdaisland.glogi :as log]
             [clojure.core.async :as async]
             [clojure.core.async :as async]
-            [frontend.util :as util]))
+            [frontend.util :as util]
+            [frontend.handler.notification :as notification]
+            [goog.object :as gobj]))
 
 
 (def write-chan (async/chan))
 (def write-chan (async/chan))
 
 
@@ -25,6 +27,10 @@
   (doseq [page pages]
   (doseq [page pages]
     (try (do-write-file! page)
     (try (do-write-file! page)
          (catch js/Error e
          (catch js/Error e
+           (notification/show!
+            "Write file failed, please copy the changes to other editors in case of losing data."
+            [:div "Error: " (str (gobj/get e "stack"))]
+            :error)
            (log/error :file/write-file-error {:error e})))))
            (log/error :file/write-file-error {:error e})))))
 
 
 (defn sync-to-file
 (defn sync-to-file