2
私は、角度$タイムアウトを使用してapiからデータをリロードし、domにライブ統計を表示します。リロードは非常にうまく動作し、5秒後にリロードします。しかし、問題は、別のタブをクリックした後、$タイムアウトやデータの再読み込みが不要なので、前のページと同じようにデータを読み込んでいます。そのデータはDOMにはありませんが、ネットワークコンソールではまだコードからデータをリロードして、そのデータでhttp get urlを呼び出します。ページ変更後の角度タイムアウトリロード
$scope.reload = function() {
$http.get(serviceBase + 'live-stats').
success(function (res) {
$scope.proizvedeno = res;
console.log(res);
});
$timeout(function(){
$scope.reload();
}, 5000);
};
$scope.reload();
P.S.私は角ローディングバーを使用していますが、このバーはページの特定の部分だけをリロードすると回転しません。この場合、統計を表示するために「タイムアウト」からデータを取得します。
EDIT: i addこの本CTRL私は唯一の "VaRのリロード"
var reload = $timeout(function(){
$scope.reload();
}, 5000);
$scope.$on('$destroy', function(){
$timeout.cancel(reload);
を})宣言する必要があり
$scope.reload = function() {
$http.get(serviceBase + 'live-stats').
success(function (res) {
$scope.proizvedeno = res;
console.log(res);
});
$timeout(function(){
$scope.reload();
}, 5000);
$scope.$on('$destroy', function(){ //this is what i add
$timeout.cancel(reload); //this is what i add
};
$scope.reload();
それでも