gpt4 book ai didi

javascript - 使用 React 重新安装时音频对象不会重新启动流

转载 作者:行者123 更新时间:2023-12-03 04:37:28 27 4
gpt4 key购买 nike

我有一个 React 组件,其中包含一个正在播放直播的 Audio 对象。当组件最初加载时,它开始播放,但是如果我卸载组件然后重新安装它,播放按钮将不起作用,并且流不会重新启动。

以下是组件和生命周期方法的代码:

import React from 'react'
import compose from 'recompose/compose'
import lifecycle from 'recompose/lifecycle'

const enhance = compose(
lifecycle({
componentDidMount() {
this.audio = new Audio()
this.audio.src = 'http://some-stream-url.com'
this.audio.play()
this.audio.muted = true
},
componentDidUpdate() {
this.audio.muted = !this.props.playing
},
componentWillUnmount() {
this.audio = ''
this.audio = null
}
})
)

const Player = (props) => null

export default enhance(Player)

最佳答案

停止音频并重新开始当前时间。

componentWillUnmount() {
this.audio.pause()
this.audio.currentTime = 0
}

关于javascript - 使用 React 重新安装时音频对象不会重新启动流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43231007/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com