From 0578bfb6adb3d031da7915fd5baea264472e9f6b Mon Sep 17 00:00:00 2001 From: Nathan DECHER Date: Mon, 6 Apr 2020 11:12:45 +0200 Subject: [PATCH] fixed broken watcher --- src/js/config.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/js/config.js b/src/js/config.js index 906aa26..6af8db5 100644 --- a/src/js/config.js +++ b/src/js/config.js @@ -7,6 +7,13 @@ const toBoolean=v => { if(v=='false' || v==false) return false; return true; }; +const notify=(key, value) => { + const interested=watchers[key]; + if(interested) Object + .keys(interested) + .map(key => interested[key]) + .forEach(fn => fn(key, value)); +}; const get=key => { let confVal=localStorage.getItem('config.'+key); @@ -19,14 +26,12 @@ const getS=key => ''+get(key); const set=(key, value) => { localStorage.setItem('config.'+key, value); - let interested=watchers[key]; - if(interested) interested.forEach(watcher => watcher(key, value)); + notify(key, value); }; const remove=key => { localStorage.removeItem('config.'+key, value); - let interested=watchers[key]; - if(interested) interested.forEach(watcher => watcher(key, assets.get('config')[key])); + notify(key, assets.get('config')[key]); }; const clear=() => Object