From bccccacad81beeab261409897c672b276ebfb72a Mon Sep 17 00:00:00 2001
From: "DESKTOP-RQ919RC\\Pc" <1300399510@qq.com>
Date: Sat, 11 Oct 2025 12:03:39 +0800
Subject: [PATCH] =?UTF-8?q?fix(=E6=AD=8C=E6=9B=B2=E8=AF=B7=E6=B1=82?=
=?UTF-8?q?=E7=AB=99):=20=E4=BF=AE=E5=A4=8D=E6=AD=8C=E6=9B=B2=E5=88=87?=
=?UTF-8?q?=E6=8D=A2=E9=80=BB=E8=BE=91=E5=B9=B6=E4=BC=98=E5=8C=96=E9=9F=B3?=
=?UTF-8?q?=E9=A2=91=E7=AE=A1=E7=90=86?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
修复fastForward函数逻辑,改为按标签切换歌曲而非时间跳转
调整clickSongs函数,传递标签信息用于后续歌曲管理
移除调试用的console.log语句
统一代码格式,如引号风格和分号使用
---
song-request-station.html | 2 +-
static/js/index.js | 9 +++++----
static/js/song-request-station.js | 33 ++++++++++++-------------------
3 files changed, 19 insertions(+), 25 deletions(-)
diff --git a/song-request-station.html b/song-request-station.html
index cb33409..e19d578 100644
--- a/song-request-station.html
+++ b/song-request-station.html
@@ -47,7 +47,7 @@
-
{{ item.tag }}
+
{{ item.tag }}
diff --git a/static/js/index.js b/static/js/index.js
index 47d6436..8e0cc34 100644
--- a/static/js/index.js
+++ b/static/js/index.js
@@ -211,6 +211,8 @@ createApp({
const src = playData.value?.playurl || "";
const area = playData.value?.area || "";
+ console.log(audioPlayer.value.src, src);
+
if (audioPlayer.value.src != src) {
manageAudio(src, area);
return;
@@ -524,12 +526,11 @@ createApp({
else getPlayUrl(index, area);
};
-
// 监听 previewState 如果为 true body.style.overflow = 'hidden'
watch(previewState, (newVal) => {
- if (newVal) document.body.style.overflow = 'hidden';
- else document.body.style.overflow = 'auto';
- })
+ if (newVal) document.body.style.overflow = "hidden";
+ else document.body.style.overflow = "auto";
+ });
return { judgmentPlayUrl, cutSong, getPlayUrl, handleBarDragBottomClick, startBarDragBottom, volumeShow, handleVolumeHide, handleVolumeShow, zeroOrderStudents, rePlay, playData, awardAudioList, changeInterval, awardMVList, bannerList, albumBoxRef, volume, handleVolumeClick, handleVolumeDrag, startDrag, stopDrag, volume, cutStudent, studentList, studentIndex, scrollToPrevious, scrollToNext, changePointer, pointerIndex, visibleRef, studentRef, customRef, formatTime, currentTimeFormatted, durationFormatted, worksRef, introduceRef, customList, closeAll, manageAudio, progress, closePreview, openPreview, previewState, audioPlayer, trait, fastForward };
},
diff --git a/static/js/song-request-station.js b/static/js/song-request-station.js
index 2de3dfa..1728f8f 100644
--- a/static/js/song-request-station.js
+++ b/static/js/song-request-station.js
@@ -391,9 +391,9 @@ createApp({
const audioPlayer = ref(null);
- const clickSongs = (songs) => {
+ const clickSongs = (tag, songs) => {
const randomIndex = Math.floor(Math.random() * songs.length);
- const item = songs[randomIndex];
+ const item = { ...songs[randomIndex], tag };
manageAudio(item);
};
@@ -402,10 +402,7 @@ createApp({
const audio = audioPlayer.value;
closeAll();
setTimeout(() => {
- console.log("item", item);
if (audio?.src != item.path) audio.src = `./static/mp3/station/${item.path}`;
- // audio.src = "https://app.gter.net/image/miniApp/mp3/1.mp3";
- // audio.src = "/static/mp3/1.MP3";
audio.play().then(() => (playData.value = { ...item, state: true }));
}, 500);
};
@@ -517,25 +514,21 @@ createApp({
durationFormatted.value = formatTime(duration);
};
- // 快进 和 后退 10秒
+ // 切换下一首 或 上一首
const fastForward = (type = "fast") => {
if (!audioPlayer.value) return;
- console.log("playData.value", playData.value);
- const src = playData.value?.path || "";
+ tags.value.forEach((item) => {
+ if (item.tag == playData.value.tag) {
+ const songs = item.songs || [];
+ const index = songs.findIndex((song) => song.name == playData.value.name);
+ // 通过下标 type = "fast" 为下一首 否则为上一首 并且需要轮回播放
+ const newIndex = type == "fast" ? (index + 1) % songs.length : (index - 1 + songs.length) % songs.length;
- if (audioPlayer.value.src != src) {
- manageAudio(playData.value);
- return;
- }
-
- let currentTime = audioPlayer.value.currentTime || 0;
- const duration = audioPlayer.value.duration || 0;
- let newTime = 0;
- if (type == "fast") newTime = Math.min(currentTime + 10, duration);
- else newTime = Math.max(currentTime - 10, 0);
- audioPlayer.value.currentTime = newTime;
- getProgress();
+ const data = { ...songs[newIndex], tag: item.tag };
+ manageAudio(data);
+ }
+ });
};
// 关闭所有播放