YouTube API iframe не работает на производстве - PullRequest
0 голосов
/ 07 января 2019

Я создал приложение React / Redux, которое использует YouTube API для воспроизведения видео. Он отлично работает на моем локальном хосте, но не работает. Это мой сценарий:

  var tag = document.createElement('script');

  tag.src = "https://www.youtube.com/iframe_api";
  var firstScriptTag = document.getElementsByTagName('script')[0];
  firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);

  // 2. This function creates an <iframe> (and YouTube player)
  //    after the API code downloads.
  function onYouTubeIframeAPIReady() {
    window.player = new YT.Player('player', {
      height: '390',
      width: '640',
      videoId: 'yy8NwjEtEkQ',
      events: {
        'onReady': onPlayerReady,
        'onStateChange': onPlayerStateChange
      }
    });
  }

  // 3. The API will call this function when the video player is ready.
  function onPlayerReady(event) {
    event.target.playVideo();
  }

  // 4. The API calls this function when the player's state changes.
  //    The function indicates that when playing a video (state=1),
  //    the player should play for six seconds and then stop.
  var done = false;
  function onPlayerStateChange(event) {
    if (event.data == YT.PlayerState.PLAYING && !done) {
      setTimeout(stopVideo, 6000);
      done = true;
    }
  }
  function stopVideo() {
    player.stopVideo();
  }
</script>`

Вот мой код в GitHub: https://github.com/davisjr2000/lr-react

...