Explorar o código

fix: 处理localStorageDriver在某些受限浏览器环境下报错导致无法使用

layhuts hai 1 mes
pai
achega
1b4e126128
Modificáronse 1 ficheiros con 7 adicións e 2 borrados
  1. 7 2
      packages/@core/base/shared/src/cache/storage-manager.ts

+ 7 - 2
packages/@core/base/shared/src/cache/storage-manager.ts

@@ -119,8 +119,13 @@ class StorageManager {
    * - SSR / Node 环境 → MemoryStorageDriver
    */
   private createDefaultDriver(): IStorageDriver {
-    if (typeof window !== 'undefined' && window.localStorage) {
-      return new LocalStorageDriver();
+    try {
+      if (typeof window !== 'undefined' && window.localStorage) {
+        return new LocalStorageDriver();
+      }
+    } catch (error) {
+      // localStorage access denied (e.g. Safari private mode)
+      console.warn('localStorage is not accessible, falling back to MemoryStorageDriver:', error);
     }
     return new MemoryStorageDriver();
   }