Skip to content
This repository was archived by the owner on Nov 28, 2025. It is now read-only.

Commit 7779283

Browse files
committed
fix(Webstorage): initial value fix
1 parent 6da8b8d commit 7779283

File tree

1 file changed

+4
-5
lines changed

1 file changed

+4
-5
lines changed

src/decorator/webstorage.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,20 +16,19 @@ export let WebStorage = (webStorage: Storage, key: string) => {
1616
return (target: Object, propertyName: string): void => {
1717
key = key || propertyName;
1818
let proxy = target[propertyName];
19-
let storedValue = WebStorageUtility.get(webStorage, key);
2019

2120
Object.defineProperty(target, propertyName, {
2221
get: function() {
2322
return proxy;
2423
},
2524
set: function(value: any) {
26-
if (!cache[key] && storedValue) { // first setter handle
27-
proxy = storedValue;
28-
} else { // if no value in localStorage, set it to initializer
25+
if (!cache[key]) { // first setter handle
26+
proxy = WebStorageUtility.get(webStorage, key) || value;
27+
cache[key] = true;
28+
} else { // if there is no value in localStorage, set it to initializer
2929
proxy = value;
3030
WebStorageUtility.set(webStorage, key, value);
3131
}
32-
cache[key] = true;
3332

3433
// manual method for force save
3534
if (proxy instanceof Object) {

0 commit comments

Comments
 (0)