mirror of
https://github.com/ZiuChen/ClipboardManager.git
synced 2025-06-08 06:16:18 +08:00
feat: 新增重置设置函数
This commit is contained in:
parent
7a6b9f5dc6
commit
dfe3d87ef0
@ -1,28 +1,5 @@
|
|||||||
import defaultSetting from '../data/setting.json'
|
import restoreSetting from './restoreSetting'
|
||||||
|
|
||||||
const sep = utools.isWindows() ? '\\' : '/'
|
const setting = utools.dbStorage.getItem('setting') || restoreSetting()
|
||||||
const defaultPath = `${
|
|
||||||
utools.isMacOs() ? utools.getPath('userData') : utools.getPath('home')
|
|
||||||
}${sep}_utools_clipboard_manager_storage`
|
|
||||||
|
|
||||||
let setting = utools.dbStorage.getItem('setting')
|
|
||||||
if (!setting) {
|
|
||||||
// 将defaultSetting的key点语法转换为对象
|
|
||||||
setting = {}
|
|
||||||
for (const key in defaultSetting) {
|
|
||||||
const keys = key.split('.')
|
|
||||||
let obj = setting
|
|
||||||
for (let i = 0; i < keys.length; i++) {
|
|
||||||
if (i === keys.length - 1) {
|
|
||||||
obj[keys[i]] = defaultSetting[key]
|
|
||||||
} else {
|
|
||||||
if (!obj[keys[i]]) obj[keys[i]] = {}
|
|
||||||
obj = obj[keys[i]]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
setting.database.path = defaultPath
|
|
||||||
utools.dbStorage.setItem('setting', setting)
|
|
||||||
}
|
|
||||||
|
|
||||||
export default setting
|
export default setting
|
||||||
|
15
src/global/restoreSetting.js
Normal file
15
src/global/restoreSetting.js
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
import defaultSetting from '../data/setting.json'
|
||||||
|
import { pointToObj } from '../utils'
|
||||||
|
|
||||||
|
const SEP = utools.isWindows() ? '\\' : '/'
|
||||||
|
const defaultPath = `${
|
||||||
|
utools.isMacOs() ? utools.getPath('userData') : utools.getPath('home')
|
||||||
|
}${SEP}_utools_clipboard_manager_storage`
|
||||||
|
|
||||||
|
export default function restoreSetting() {
|
||||||
|
// 将defaultSetting的key点语法转换为对象
|
||||||
|
const setting = pointToObj(defaultSetting)
|
||||||
|
setting.database.path = defaultPath
|
||||||
|
utools.dbStorage.setItem('setting', setting)
|
||||||
|
return setting
|
||||||
|
}
|
@ -19,4 +19,21 @@ const dateFormat = (timeStamp) => {
|
|||||||
return info
|
return info
|
||||||
}
|
}
|
||||||
|
|
||||||
export { dateFormat }
|
const pointToObj = (objWithPointKey) => {
|
||||||
|
let rtnObj = {}
|
||||||
|
for (const key in objWithPointKey) {
|
||||||
|
const keys = key.split('.')
|
||||||
|
let obj = rtnObj
|
||||||
|
for (let i = 0; i < keys.length; i++) {
|
||||||
|
if (i === keys.length - 1) {
|
||||||
|
obj[keys[i]] = objWithPointKey[key]
|
||||||
|
} else {
|
||||||
|
if (!obj[keys[i]]) obj[keys[i]] = {}
|
||||||
|
obj = obj[keys[i]]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return rtnObj
|
||||||
|
}
|
||||||
|
|
||||||
|
export { dateFormat, pointToObj }
|
||||||
|
Loading…
x
Reference in New Issue
Block a user