添加列表元数据清理

pull/930/merge
lyswhut 2022-04-10 21:03:40 +08:00
parent 692ab6dacb
commit ff8195df46
2 changed files with 32 additions and 1 deletions

View File

@ -1,7 +1,7 @@
import musicSdk from '../../utils/music' import musicSdk from '../../utils/music'
import { clearLyric, clearMusicUrl } from '../../utils' import { clearLyric, clearMusicUrl } from '../../utils'
import { sync as eventSyncName, list as eventListNames } from '@renderer/event/names' import { sync as eventSyncName, list as eventListNames } from '@renderer/event/names'
import { removeListPosition, setListPrevSelectId, removeListUpdateInfo } from '@renderer/utils/data' import { removeListPosition, setListPrevSelectId, removeListUpdateInfo, getListPositionAll, setListPositionAll, getListUpdateInfo, setListUpdateInfo } from '@renderer/utils/data'
import { markRawList, toRaw, markRaw } from '@renderer/utils/vueTools' import { markRawList, toRaw, markRaw } from '@renderer/utils/vueTools'
import { allList, allListInit, setInited, removeUserList, addUserList, updateList, defaultList, loveList, userLists } from '@renderer/core/share/list' import { allList, allListInit, setInited, removeUserList, addUserList, updateList, defaultList, loveList, userLists } from '@renderer/core/share/list'
@ -40,6 +40,26 @@ const actions = {
}, },
} }
const updateListMetaData = () => {
const listUpdateInfos = getListUpdateInfo()
const newListUpdateInfos = {}
const listPositions = getListPositionAll()
const newListPositions = {}
for (const list of [defaultList, loveList, ...userLists]) {
if (listPositions[list.id] != null) {
newListPositions[list.id] = listPositions[list.id]
}
if (listUpdateInfos[list.id] != null) {
newListUpdateInfos[list.id] = listUpdateInfos[list.id]
}
}
setListPositionAll(newListPositions)
setListUpdateInfo(newListUpdateInfos)
}
// mitations // mitations
const mutations = { const mutations = {
initList(state, { defaultList, loveList, userList, tempList }) { initList(state, { defaultList, loveList, userList, tempList }) {
@ -60,6 +80,8 @@ const mutations = {
// state.isInitedList = true // state.isInitedList = true
setInited() setInited()
updateListMetaData()
// if (!isSync) { // if (!isSync) {
// window.eventHub.emit(eventSyncName.send_action_list, { // window.eventHub.emit(eventSyncName.send_action_list, {
// action: 'init_list', // action: 'init_list',

View File

@ -19,6 +19,11 @@ export const initListPosition = () => {
}) })
} }
export const getListPosition = id => listPosition[id] || 0 export const getListPosition = id => listPosition[id] || 0
export const getListPositionAll = () => listPosition
export const setListPositionAll = positions => {
listPosition = positions
saveListPosition()
}
export const setListPosition = (id, position) => { export const setListPosition = (id, position) => {
listPosition[id] = position || 0 listPosition[id] = position || 0
saveListPosition() saveListPosition()
@ -60,6 +65,10 @@ const saveListUpdateInfo = throttle(() => {
}, 1000) }, 1000)
export const getListUpdateInfo = () => listUpdateInfo export const getListUpdateInfo = () => listUpdateInfo
export const setListUpdateInfo = info => {
listUpdateInfo = info
saveListUpdateInfo()
}
export const setListAutoUpdate = (id, enable) => { export const setListAutoUpdate = (id, enable) => {
const targetInfo = listUpdateInfo[id] ?? { updateTime: '', isAutoUpdate: false } const targetInfo = listUpdateInfo[id] ?? { updateTime: '', isAutoUpdate: false }
targetInfo.isAutoUpdate = enable targetInfo.isAutoUpdate = enable