Звук больше не воспроизводится на странице refre sh - React - PullRequest
0 голосов
/ 17 апреля 2020

Мой звук воспроизводится, когда componentDidMount (). НО он больше не воспроизводится при обновлении страницы sh, хотя componentDidMount () вызывается снова. Любая идея, как заставить звук воспроизводиться снова, когда страница refre sh?

  componentDidMount() {
    if (this.props.songsQuiz) {
      alert("componentDidMount");
      this.playNextSongHandler();
    }
  }
  playNextSongHandler = () => {
    if (this.state.songsQuiz[this.state.currentSong] && this.state.playSong) {
      this.state.songsQuiz[this.state.currentSong].play();
      return;
    }
  };

Ответы [ 2 ]

1 голос
/ 17 апреля 2020

Возможно, состояние хранилища еще не полностью обновлено, ie: playSong равно нулю до того, как вы их вызвали. Вы можете добавить componentDidUpdate или использовать React.useEffect

0 голосов
/ 17 апреля 2020

Я только что нашел обходное решение, перенаправляющее страницу на себя, если страница обновлялась / обновлялась. Возможно, есть лучшее решение, но я рад, что оно сработало. Но теперь страница загружается два раза. Надеюсь, кто-то придумает лучшее решение. Я сделал это так:

if (window.performance) {
  if (performance.navigation.type == 1) {
    alert("This page is reloaded");
    window.location.href = "/musicalquiz";
  } else {
    alert("This page is not reloaded");
  }
}
...