将软件设置与播放列表分离存储成两个文件

This commit is contained in:
lyswhut
2019-12-23 19:24:35 +08:00
parent 73321829ae
commit a50ecff189
7 changed files with 77 additions and 40 deletions
+2 -2
View File
@@ -25,8 +25,8 @@ export default {
setting(state) {
return state.setting
},
electronStore(state) {
return state.electronStore
settingVersion(state) {
return state.settingVersion
},
version(state) {
return state.version
+3
View File
@@ -9,6 +9,9 @@ export default {
setSetting(state, val) {
state.setting = val
},
setSettingVersion(state, val) {
state.settingVersion = val
},
setLeaderboard(state, { tabId, source }) {
if (tabId != null) state.setting.leaderboard.tabId = tabId
if (source != null) state.setting.leaderboard.source = source
+20 -4
View File
@@ -4,9 +4,24 @@ import Store from 'electron-store'
import { updateSetting } from '../utils'
import { windowSizeList } from '../../common/config'
import { version } from '../../../package.json'
let electronStore = new Store()
const setting = updateSetting(electronStore.get('setting'))
electronStore.set('setting', setting)
const electronStore_list = window.electronStore_list = new Store({
name: 'playList',
})
const electronStore_config = window.electronStore_config = new Store({
name: 'config',
})
if (!electronStore_config.get('version') && electronStore_config.get('setting')) { // 迁移配置
electronStore_list.set('defaultList', electronStore_config.get('list.defaultList'))
electronStore_list.set('loveList', electronStore_config.get('list.loveList'))
electronStore_list.set('downloadList', electronStore_config.get('download.list'))
electronStore_config.set('version', electronStore_config.get('setting.version'))
electronStore_config.delete('setting.version')
electronStore_config.delete('list')
electronStore_config.delete('download')
}
const { version: settingVersion, setting } = updateSetting(electronStore_config.get('setting'), electronStore_config.get('version'))
electronStore_config.set('version', settingVersion)
electronStore_config.set('setting', setting)
process.versions.app = version
export default {
@@ -70,6 +85,7 @@ export default {
},
userInfo: null,
setting,
electronStore,
settingVersion,
windowSizeList,
}