+ 预加载中... {{ Math.round(playQueueStore.preloadProgress) }}%
+
+
+ v-if="playQueueStore.list.length !== 0 && route.path !== '/playroom'">
-
+
- {{ getCurrentTrack().song.name }}
+ {{ getCurrentTrack()?.song.name }}
@@ -248,9 +355,10 @@ function getCurrentTrack() {
diff --git a/src/stores/usePlayQueueStore.ts b/src/stores/usePlayQueueStore.ts
index b4ce9b7..225c262 100644
--- a/src/stores/usePlayQueueStore.ts
+++ b/src/stores/usePlayQueueStore.ts
@@ -1,9 +1,9 @@
import { defineStore } from "pinia"
-import { ref } from "vue"
+import { ref, computed } from "vue"
-export const usePlayQueueStore = defineStore('queue', () =>{
- const list = ref
([])
- const currentIndex = ref(0)
+export const usePlayQueueStore = defineStore('queue', () => {
+ const list = ref([])
+ const currentIndex = ref(0)
const isPlaying = ref(false)
const queueReplaceLock = ref(false)
const isBuffering = ref(false)
@@ -21,5 +21,183 @@ export const usePlayQueueStore = defineStore('queue', () =>{
})
const shuffleCurrent = ref(undefined)
- return { list, currentIndex, isPlaying, queueReplaceLock, isBuffering, currentTime, duration, updatedCurrentTime, visualizer, shuffleList, playMode, shuffleCurrent }
+ // 预加载相关状态
+ const preloadedAudio = ref