fix(core): 修复事件监听器泄漏

- App.vue: offline 监听器添加 onUnmounted 清理,移除冗余 console.log
- MusicHook.ts: document.onkeyup 直接赋值改为 addEventListener + 防重复
- MusicHook.ts: audio-ready 监听器提取为命名函数,先移除再注册防堆叠
This commit is contained in:
alger
2026-03-29 14:21:43 +08:00
parent a407045527
commit ad2df12957
2 changed files with 32 additions and 30 deletions
+5 -3
View File
@@ -131,14 +131,16 @@ onMounted(async () => {
// 检查网络状态,离线时自动跳转到本地音乐页面
if (!navigator.onLine) {
console.log('检测到无网络连接,跳转到本地音乐页面');
router.push('/local-music');
}
// 监听网络状态变化,断网时跳转到本地音乐页面
window.addEventListener('offline', () => {
console.log('网络连接断开,跳转到本地音乐页面');
const handleOffline = () => {
router.push('/local-music');
};
window.addEventListener('offline', handleOffline);
onUnmounted(() => {
window.removeEventListener('offline', handleOffline);
});
// 初始化 MusicHook,注入 playerStore