From 30d5f53c1dc68b6891eb48ffa894e6de71b2555b Mon Sep 17 00:00:00 2001 From: lyswhut Date: Tue, 18 Jan 2022 15:34:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=B7=B2=E6=94=B6=E8=97=8F?= =?UTF-8?q?=E7=9A=84=E5=9C=A8=E7=BA=BF=E5=88=97=E8=A1=A8=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E5=B0=86=E5=A7=8B=E7=BB=88=E9=87=8D=E6=96=B0=E5=8A=A0=E8=BD=BD?= =?UTF-8?q?=EF=BC=8C=E4=B8=8D=E5=86=8D=E4=BD=BF=E7=94=A8=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- publish/changeLog.md | 1 + src/renderer/store/modules/leaderboard.js | 3 ++- src/renderer/store/modules/songList.js | 6 ++++-- src/renderer/views/Leaderboard.vue | 4 ++-- src/renderer/views/list/components/MyLists.vue | 4 ++-- 5 files changed, 11 insertions(+), 7 deletions(-) diff --git a/publish/changeLog.md b/publish/changeLog.md index 78119186..69dae357 100644 --- a/publish/changeLog.md +++ b/publish/changeLog.md @@ -9,6 +9,7 @@ - 为可视化音频的频谱整体添加频谱均值加成,使频谱显示更有节奏感 - 优化程序初始化逻辑,修复无网络的情况下的初始化问题 +- 我的列表-列表名的右击菜单更新已收藏的在线列表时,将始终重新加载,不再使用缓存,解决在原平台更新歌单后,在LX点击更新可能看到的还是在原平台更新前的歌单的问题 ### 修复 diff --git a/src/renderer/store/modules/leaderboard.js b/src/renderer/store/modules/leaderboard.js index ca02ff7a..39573341 100644 --- a/src/renderer/store/modules/leaderboard.js +++ b/src/renderer/store/modules/leaderboard.js @@ -66,11 +66,12 @@ const actions = { return listInfo }) }, - getListAll({ state, rootState }, id) { + getListAll({ state, rootState }, { id, isRefresh = false }) { // console.log(source, id) let [source, bangId] = id.split('__') const loadData = (id, page) => { let key = `${source}${id}${page}` + if (isRefresh && cache.has(key)) cache.delete(key) return cache.has(key) ? Promise.resolve(cache.get(key)) : music[source].leaderboard.getList(bangId, page).then(result => { diff --git a/src/renderer/store/modules/songList.js b/src/renderer/store/modules/songList.js index 57058f9c..d2b2d14a 100644 --- a/src/renderer/store/modules/songList.js +++ b/src/renderer/store/modules/songList.js @@ -81,10 +81,11 @@ const actions = { commit('clearList') return music[source].songList.getList(sortId, tabId, page).then(result => commit('setList', { result, key, page })) }, - getListDetail({ state, commit }, { id, source, page }) { + getListDetail({ state, commit }, { id, source, page, isRefresh = false }) { let key = `sdetail__${source}__${id}__${page}` if (state.listDetail.list.length && state.listDetail.key == key) return Promise.resolve(state.listDetail.list) commit('clearListDetail') + if (isRefresh && cache.has(key)) cache.delete(key) return ( cache.has(key) ? Promise.resolve(cache.get(key)) @@ -94,10 +95,11 @@ const actions = { return result.list }) }, - getListDetailAll({ state, rootState }, { source, id }) { + getListDetailAll({ state, rootState }, { source, id, isRefresh = false }) { // console.log(source, id) const loadData = (id, page) => { let key = `sdetail__${source}__${id}__${page}` + if (isRefresh && cache.has(key)) cache.delete(key) return cache.has(key) ? Promise.resolve(cache.get(key)) : music[source].songList.getListDetail(id, page).then(result => { diff --git a/src/renderer/views/Leaderboard.vue b/src/renderer/views/Leaderboard.vue index 34114d61..705b7f44 100644 --- a/src/renderer/views/Leaderboard.vue +++ b/src/renderer/views/Leaderboard.vue @@ -211,7 +211,7 @@ export default { async addSongListDetail({ boardId, boardName, source, id }) { // console.log(this.listDetail.info) // if (!this.listDetail.info.name) return - const list = await this.getListAll(boardId) + const list = await this.getListAll({ id: boardId }) this.createUserList({ name: boardName, id, @@ -230,7 +230,7 @@ export default { }) isPlayingList = true } - const fullList = await this.getListAll(boardId) + const fullList = await this.getListAll({ id: boardId }) if (!fullList.length) return if (isPlayingList) { if (tempList.meta.id == id) { diff --git a/src/renderer/views/list/components/MyLists.vue b/src/renderer/views/list/components/MyLists.vue index abd01f0c..c083a66c 100644 --- a/src/renderer/views/list/components/MyLists.vue +++ b/src/renderer/views/list/components/MyLists.vue @@ -339,9 +339,9 @@ export default { let promise if (/board__/.test(sourceListId)) { const id = sourceListId.replace(/board__/, '') - promise = this.getBoardListAll(id) + promise = this.getBoardListAll({ id, isRefresh: true }) } else { - promise = this.getListDetailAll({ source, id: sourceListId }) + promise = this.getListDetailAll({ source, id: sourceListId, isRefresh: true }) } return promise.finally(() => { this.fetchingListStatus[id] = false