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

fix: check remove on manual reload

Gerald 8 лет назад
Родитель
Сommit
ddfb93e40e
2 измененных файлов с 9 добавлено и 10 удалено
  1. 3 6
      src/background/app.js
  2. 6 4
      src/options/app.js

+ 3 - 6
src/background/app.js

@@ -67,12 +67,9 @@ const commands = {
     return removeScript(id)
     .then(() => { sync.sync(); });
   },
-  GetData() {
-    return checkRemove()
-    .then(changed => {
-      if (changed) sync.sync();
-      return getData();
-    })
+  GetData(clear) {
+    return (clear ? checkRemove() : Promise.resolve())
+    .then(getData)
     .then(data => {
       data.sync = sync.getStates();
       data.version = VM_VER;

+ 6 - 4
src/options/app.js

@@ -53,8 +53,8 @@ function initScript(script) {
   script._cache = { search, name, lowerName };
 }
 
-function loadData() {
-  sendMessage({ cmd: 'GetData' })
+function loadData(clear) {
+  sendMessage({ cmd: 'GetData', data: clear })
   .then(data => {
     [
       'cache',
@@ -72,9 +72,11 @@ function loadData() {
 
 function initMain() {
   store.loading = true;
-  loadData();
+  loadData(true);
   Object.assign(handlers, {
-    ScriptsUpdated: loadData,
+    ScriptsUpdated() {
+      loadData();
+    },
     UpdateSync(data) {
       store.sync = data;
     },