2016-04-01 6 views
1

私はJSON配列(以下のプレイブックという名前)を無期限にループしたいと思います。

$scope.loadPlaybook = function() { 
    $http.get('/static/lib/playbook.json') 
     .then(function (res) { 
      $scope.data.playbook = res.data; 

      console.log('Playbook data:', $scope.data.playbook); 

      $interval(function() { 
       console.log('Trying to access from $interval:', $scope.data.playbook); 
      }, 1000); 
     }, 
     function (err) { 
      // .. 
     }); 
}; 

時には、$scope.data.playbookは、$intervalコールバックでの時間のほとんどはない定義されています

は、私は、次のコードを持っています。私はページをロードするときの倍の

70%は、出力は次のようになります。

enter image description here

私はページをロードする際の時間の30%は、出力は次のようになります。

enter image description here

私はAngular 1.5.1とGoogle Chromeを使用しています。

+0

try log $ scope.dataを開き、データを展開して展開し、すべてのデータがあることを確認します。 –

答えて

0

これはあなたの質問に直接答えることはできませんが、私が知る限り、console.log()は実行時にパラメータとして渡されたオブジェクトのプレビューを表示し、クリックすると現在のオブジェクト状態で更新されます表示されたプレビューをコンソールに表示します。特定の時刻にオブジェクトの状態を表示する場合は、console.log(angular.copy(sourceObj))を使用できます。これらの2つを組み合わせて、$ scope.dataが最初に設定された後に別の場所で上書きされたかどうかを確認することができます。

希望すると助かります!

関連する問題