Kaynağa Gözat

fix: 解决window在构造函数中进行访问破坏SSR/Node环境。

layhuts 1 ay önce
ebeveyn
işleme
0be4b51eaa

+ 6 - 0
packages/@core/base/shared/src/cache/local-storage-driver.ts

@@ -17,6 +17,12 @@ class LocalStorageDriver implements IStorageDriver {
   constructor({
                 storageType = 'localStorage',
               }: LocalStorageDriverOptions = {}) {
+    if (typeof window === 'undefined') {
+      // eslint-disable-next-line unicorn/prefer-type-error -- not a type check, it's an environment check
+      throw new Error(
+        'LocalStorageDriver is not available in non-browser environments. Use MemoryStorageDriver instead.',
+      );
+    }
     this.storage =
       storageType === 'localStorage'
         ? window.localStorage