Howler. js воспроизводит фоновый звук много раз (иногда даже 70 раз), пока не произойдет сбой - PullRequest
0 голосов
/ 30 апреля 2020

Я пытаюсь использовать Howler. js для воспроизведения простого звука bg, но по какой-то причине он воспроизводит его несколько раз одновременно.

Я пробовал это так:

  const bgSound = new Howl({
    src: [bgTrack],
    loop: true,
    volume: 1,
    onend: function () {
      console.log("Finished!");
    },
    onplay: () => {
      console.log("starting!");
    },
  });

  bgSound.once("load", function () {
    bgSound.play();
  });

Я также попробовал это так:

  const bgSound = new Howl({
    src: [bgTrack],
    loop: true,
    volume: 1,
    onend: function () {
      console.log("Finished!");
    },
    onplay: () => {
      console.log("starting!");
    },
  });

  useEffect(() => {
    bgSound.play();
    console.log("should be starting!");

    return function cleanup() {
      bgSound.stop();
      console.log("should be starting!");
    };
  });

Также попробовал просто так:

  const bgSound = new Howl({
    src: [bgTrack],
    loop: true,
    volume: 1,
    autoplay: true,
    onend: function () {
      console.log("Finished!");
    },
    onplay: () => {
      console.log("starting!");
    },
  });

Я также попытался установить play() как функция, а затем вызвать его из моего рендера. Не могу заставить это работать. Я продолжаю получать много

...