Реагируйте. js play musi c проблема - PullRequest
0 голосов
/ 22 марта 2020
playSong = (music) => {
  this.setState({
song: music
  }, () => this.addMusicToPlayer())
}

addMusicToPlayer = () => {
  let audio = document.getElementById("playing_id"); 
  let playing = this.state.playing
  if(!playing){
audio.play(); 
this.setState({
playing: true
})
  } else {
this.setState({
playing: false
})
audio.pause(); 
  }
}



<button className="jp-play" tabIndex={0}><i className={playing ? "fa fa-pause" : "fa fa-play" } onClick={() => this.handlePlayer(this.state.song ? "playing_id" : "audio")} />
{
  this.state.song ? 
  (
    <audio id="playing_id">
<source src={"http://127.0.0.1:5000/"+ this.state.song} type="audio/mp3" />
    </audio>
  ):(
    <audio id="audio" style={{ display:'none' }}>
<source src="static/media/audio/beach.mp3" type="audio/mp3" />
    </audio>
  )
}
</button>

Здесь я пытаюсь сыграть musi c в React. js. песни поступают из базы данных, и я меняю песни по нажатию кнопки воспроизведения с помощью onClick event.id

Когда я жестко кодирую песню, такую ​​как src="static/media/audio/beach.mp3", она воспроизводится, но песни поступают из базы данных, а не игра.

Пожалуйста, посмотрите.

Где я совершаю ошибку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...