添加一个获取歌曲URL超时的定时器
parent
2359a1444b
commit
ab1562ea33
|
@ -51,7 +51,7 @@ const getPlayType = (highQuality, songInfo) => {
|
||||||
return type
|
return type
|
||||||
}
|
}
|
||||||
|
|
||||||
const useDelayNextTimeout = ({ playNext }) => {
|
const useDelayNextTimeout = ({ playNext, timeout }) => {
|
||||||
let delayNextTimeout
|
let delayNextTimeout
|
||||||
const clearDelayNextTimeout = () => {
|
const clearDelayNextTimeout = () => {
|
||||||
// console.log(this.delayNextTimeout)
|
// console.log(this.delayNextTimeout)
|
||||||
|
@ -64,7 +64,7 @@ const useDelayNextTimeout = ({ playNext }) => {
|
||||||
const addDelayNextTimeout = () => {
|
const addDelayNextTimeout = () => {
|
||||||
clearDelayNextTimeout()
|
clearDelayNextTimeout()
|
||||||
delayNextTimeout = Math.random()
|
delayNextTimeout = Math.random()
|
||||||
wait(5000, delayNextTimeout).then(() => {
|
wait(timeout, delayNextTimeout).then(() => {
|
||||||
delayNextTimeout = null
|
delayNextTimeout = null
|
||||||
playNext()
|
playNext()
|
||||||
}).catch(_ => _)
|
}).catch(_ => _)
|
||||||
|
@ -87,11 +87,14 @@ export default ({ setting }) => {
|
||||||
|
|
||||||
const clearPlayedList = useCommit('player', 'clearPlayedList')
|
const clearPlayedList = useCommit('player', 'clearPlayedList')
|
||||||
const setPlayedList = useCommit('player', 'setPlayedList')
|
const setPlayedList = useCommit('player', 'setPlayedList')
|
||||||
|
const { addDelayNextTimeout, clearDelayNextTimeout } = useDelayNextTimeout({ playNext, timeout: 5000 })
|
||||||
|
const { addDelayNextTimeout: addLoadTimeout, clearDelayNextTimeout: clearLoadTimeout } = useDelayNextTimeout({ playNext, timeout: 123000 })
|
||||||
|
|
||||||
const setUrl = (targetSong, isRefresh, isRetryed = false) => {
|
const setUrl = (targetSong, isRefresh, isRetryed = false) => {
|
||||||
let type = getPlayType(setting.value.player.highQuality, targetSong)
|
let type = getPlayType(setting.value.player.highQuality, targetSong)
|
||||||
// this.musicInfo.url = await getMusicUrl(targetSong, type)
|
// this.musicInfo.url = await getMusicUrl(targetSong, type)
|
||||||
setAllStatus(t('player__geting_url'))
|
setAllStatus(t('player__geting_url'))
|
||||||
|
addLoadTimeout()
|
||||||
|
|
||||||
return getUrl({
|
return getUrl({
|
||||||
musicInfo: targetSong,
|
musicInfo: targetSong,
|
||||||
|
@ -113,6 +116,8 @@ export default ({ setting }) => {
|
||||||
setAllStatus(err.message)
|
setAllStatus(err.message)
|
||||||
addDelayNextTimeout()
|
addDelayNextTimeout()
|
||||||
return Promise.reject(err)
|
return Promise.reject(err)
|
||||||
|
}).finally(() => {
|
||||||
|
clearLoadTimeout()
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const setImg = ({ listId, musicInfo: targetSong }) => {
|
const setImg = ({ listId, musicInfo: targetSong }) => {
|
||||||
|
@ -154,7 +159,7 @@ export default ({ setting }) => {
|
||||||
window.eventHub.emit(eventPlayerNames.updateLyric, musicInfo)
|
window.eventHub.emit(eventPlayerNames.updateLyric, musicInfo)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const { addDelayNextTimeout, clearDelayNextTimeout } = useDelayNextTimeout({ playNext })
|
|
||||||
usePlayProgress({ setting, playNext })
|
usePlayProgress({ setting, playNext })
|
||||||
useMediaSessionInfo({ playPrev, playNext })
|
useMediaSessionInfo({ playPrev, playNext })
|
||||||
usePlayEvent({
|
usePlayEvent({
|
||||||
|
|
Loading…
Reference in New Issue