Przeglądaj źródła

fix: 解决indexedDB的getDB在失败重试时永远返回错误Promise问题

layhuts 1 miesiąc temu
rodzic
commit
b40822e3ed

+ 5 - 1
packages/@core/base/shared/src/cache/indexeddb-driver.ts

@@ -107,7 +107,11 @@ class IndexedDBDriver implements IStorageDriver {
    */
   private getDB(): Promise<IDBDatabase> {
     if (!this.dbPromise) {
-      this.dbPromise = this.openDB();
+      this.dbPromise = this.openDB().catch((error) => {
+        // allow retry on next call
+        this.dbPromise = null;
+        throw error;
+      });
     }
     return this.dbPromise;
   }