Kaynağa Gözat

fix: check typeof driver methods

Ryan Chandler 4 yıl önce
ebeveyn
işleme
705774c706

Dosya farkı çok büyük olduğundan ihmal edildi
+ 0 - 0
dist/spruce.js


Dosya farkı çok büyük olduğundan ihmal edildi
+ 0 - 0
dist/spruce.js.map


Dosya farkı çok büyük olduğundan ihmal edildi
+ 0 - 0
dist/spruce.module.js


Dosya farkı çok büyük olduğundan ihmal edildi
+ 0 - 0
dist/spruce.module.js.map


Dosya farkı çok büyük olduğundan ihmal edildi
+ 0 - 0
dist/spruce.umd.js


Dosya farkı çok büyük olduğundan ihmal edildi
+ 0 - 0
dist/spruce.umd.js.map


+ 6 - 2
src/index.js

@@ -139,11 +139,15 @@ const Spruce = {
     },
     },
 
 
     persistUsing(driver) {
     persistUsing(driver) {
-        if (driver.getItem === undefined) {
+        if (this.persisted.length > 0) {
+            console.warn('[Spruce] You have already initialised a persisted store. Changing the driver may cause issues.')
+        }
+
+        if (typeof driver.getItem !== 'function') {
             throw new Error('[Spruce] The persistence driver must have a `getItem(key)` method.')
             throw new Error('[Spruce] The persistence driver must have a `getItem(key)` method.')
         }
         }
 
 
-        if (driver.setItem === undefined) {
+        if (typeof driver.setItem !== 'function') {
             throw new Error('[Spruce] The persistence driver must have a `setItem(key, value)` method.')
             throw new Error('[Spruce] The persistence driver must have a `setItem(key, value)` method.')
         }
         }
 
 

Bu fark içinde çok fazla dosya değişikliği olduğu için bazı dosyalar gösterilmiyor