refactor(music-player): 优化 currentMusic 变化监听逻辑- 修改 watch 监听方式,使用箭头函数监听 currentMusic.value?.id 的变化

-增加对当前音乐对象的存在性检查
- 保留原有的立即执行行为
This commit is contained in:
ikmkj
2025-07-26 00:53:00 +08:00
parent ce33571719
commit 823fdf3245

View File

@@ -546,8 +546,11 @@ const scrollToActiveLyric = async () => {
} }
// 监听当前播放歌曲的变化 // 监听当前播放歌曲的变化
watch(currentMusic, (newMusic) => { watch(() => currentMusic.value?.id, (newId) => {
if (newMusic && newMusic.id) { if (newId) {
const newMusic = playerStore.getCurrentMusic;
if (!newMusic) return;
// 处理 URL // 处理 URL
playerStore.updateMusicUrl(newMusic.id, processMusicUrl(newMusic.url)) playerStore.updateMusicUrl(newMusic.id, processMusicUrl(newMusic.url))
playerStore.updateMusicCover(newMusic.id, processMusicUrl(newMusic.cover)) playerStore.updateMusicCover(newMusic.id, processMusicUrl(newMusic.cover))
@@ -571,7 +574,7 @@ watch(currentMusic, (newMusic) => {
lyricLines.value = {} lyricLines.value = {}
if (isExpanded.value) expandedActiveTab.value = 'lyric' if (isExpanded.value) expandedActiveTab.value = 'lyric'
} }
}, { deep: true }) }, { immediate: true })
</script> </script>
<style scoped> <style scoped>