2013-05-03 39 views
6

我設法讓後端功能的不斷輪詢使用 this answer.無閃爍的角度輪詢REST後端

但在每超時UI閃爍(短時間空模型)。 我怎樣才能更新模型(和視圖分別)後新數據到達 爲了避免這種閃爍的影響?

這裏是我的電流控制器(從step_11 (Angular.js Tutorial)略有修改):

function MyPollingCtrl($scope, $routeParams, $timeout, Model) { 

(function tick() { 
    $scope.line = Model.get({ 
     modelId : $routeParams.modelId 
    }, function(model) { 
     $timeout(tick, 2000); 
    }); 
})(); 

} 

//編輯:我使用的是當前穩定Angular.js的1.0.6

回答

10

嘗試在更新數據成功回調。事情是這樣的:

(function tick() { 
    Model.get({ 
     modelId : $routeParams.modelId 
    }, function(model) { 
     $scope.line = model;  
     $timeout(tick, 2000); 
    }); 
})(); 

這應該防止當$scope.line是空的,因爲模型resource是獲取數據正在發生的閃爍。

+0

真棒:作品像一個魅力!謝謝! – user1126545 2013-05-03 06:34:47

+0

如果我收到錯誤怎麼辦? – naneri 2016-04-28 10:35:54