Javascript 新的YT.Player()正在开发中,但不在生产中

Javascript 新的YT.Player()正在开发中,但不在生产中,javascript,angularjs,youtube-api,production-environment,youtube-iframe-api,Javascript,Angularjs,Youtube Api,Production Environment,Youtube Iframe Api,似乎新的YT.Player()正在开发中,而不是在生产中 var player = new YT.Player(domId, { events: { onReady: function() { // because of a bug in the youtube iframe api var p; player.addEventListener('onStateChange', function(e) { if (e.data ==

似乎新的YT.Player()正在开发中,而不是在生产中

var player = new YT.Player(domId, {
  events: {
    onReady: function() {
      // because of a bug in the youtube iframe api
      var p;
      player.addEventListener('onStateChange', function(e) {
        if (e.data === 1) {
          p = $interval(function() {
            var elapsedTime = Math.floor(player.getCurrentTime());
            $scope.skim.sections[len-1].startTime = elapsedTime;
            setHMS($scope.skim.sections[len-1], elapsedTime);
          }, 1000);
        }
        else {
          $interval.cancel(p);
        }
      });
      console.log("onReady fired");
      updateStartTimeAndSeekTo($scope.skim.sections[len-1]);
      player.pauseVideo();
    }
  }
});
此代码用于在视频播放时更新一些输入字段。它在开发中做到了这一点,但在生产中却没有做到

var player = new YT.Player(domId, {
  events: {
    onReady: function() {
      // because of a bug in the youtube iframe api
      var p;
      player.addEventListener('onStateChange', function(e) {
        if (e.data === 1) {
          p = $interval(function() {
            var elapsedTime = Math.floor(player.getCurrentTime());
            $scope.skim.sections[len-1].startTime = elapsedTime;
            setHMS($scope.skim.sections[len-1], elapsedTime);
          }, 1000);
        }
        else {
          $interval.cancel(p);
        }
      });
      console.log("onReady fired");
      updateStartTimeAndSeekTo($scope.skim.sections[len-1]);
      player.pauseVideo();
    }
  }
});
这是直播页面。这是一段解释它应该如何工作的视频。并且是相关的GitHub代码

我真的不知道如何调试这个

  • 由于某些原因,
    console.log()
    语句似乎没有出现在生产中。没有这些,我不知道该怎么办
  • 我检查了网络选项卡,似乎api代码正在成功下载
  • heroku日志没有显示错误



检查iframe源url是否包含源代码=http://localhost:9000硬编码。如果从url中删除了origin参数。它开始工作。

问题可能在生产环境配置文件中。添加
config.assets.debug=true
to production.rb为我修复了它

我相信这是一行代码造成的problem@pankajparkar对,
player
未定义,我认为这是因为
new YT.player()
不起作用。我不知道为什么
新的YT.Player()
不能工作,但是定义了.Player。它有价值。但球员内部的seekTo方法缺失。是YT.Player()API方法还是您没有编写它?一些关于seekTo的问题……你们怎么知道玩家是如何定义的(我并不怀疑,我只是想知道自己是如何理解的)。我不确定你问的是关于
YT.Player()
,但它在开发中工作得很好,所以我不认为我用错了(除非它在生产中需要不同的用途,我在本书中没有看到)。