From e3ee1ca2300237742cda38684d366aafc8e888da Mon Sep 17 00:00:00 2001 From: ZiuChen <457353192@qq.com> Date: Tue, 20 Sep 2022 21:13:14 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=A0=B9=E6=8D=AE=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E5=90=8C=E6=AD=A5=E6=9C=AC=E5=9C=B0=E8=AE=BE?= =?UTF-8?q?=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/global/readSetting.js | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/src/global/readSetting.js b/src/global/readSetting.js index b79fec3..8141d1c 100644 --- a/src/global/readSetting.js +++ b/src/global/readSetting.js @@ -1,5 +1,27 @@ import restoreSetting from './restoreSetting' +import defaultSetting from '../data/setting.json' +import { pointToObj } from '../utils' -const setting = utools.dbStorage.getItem('setting') || restoreSetting() +defaultSetting = pointToObj(defaultSetting) + +// 比较默认设置与当前设置 +function compareSetting() { + const setting = utools.dbStorage.getItem('setting') || restoreSetting() + // 如果默认设置中新增了某个设置项,为本地设置添加该项 + for (const key in defaultSetting) { + if (setting[key] === undefined) { + setting[key] = defaultSetting[key] + } + } + // 如果默认设置中删除了某个设置项,删除本地设置中的该项 + for (const key in setting) { + if (defaultSetting[key] === undefined) { + delete setting[key] + } + } + return setting +} + +const setting = compareSetting() export default setting