我有一個角度的服務建立像 -AngularJS服務更新控制變量
function updateViewService($http, $interval) {
var change = true;
var grabTimeStamp = function(){
$http.get('someapi').then(function success(response){
//some logic to change var change according to the response
}
$interval(grabTimeStamp, 10000);
return { refresh: function(){
return change;
}};
}
現在我需要做的是在控制器很快恢復change
並更新控制器變量作爲服務change
變化。
我懷疑是在控制器中,服務返回函數只返回一次該值。所以我在調用服務時在我的控制器中嘗試了$interval
,但它並沒有更新控制器變量。
我有很多控制器,這就是爲什麼我做了一個服務,應該更新所有的控制器。
然後,我試圖$rootScope.$broadcast
每當change
變化的變化。試圖聽廣播控制器與$scope.$on
,但沒有奏效。
if(change === true){
$rootScope.$broadcast('dataChanged',change);
change = false;
}
什麼應該是這樣做的理想方法?
基本上就是我想要做的是 -
創建一個服務,使每十秒的請求,並更新
change
變量(完成)通過這個變量來控制和更新該視圖(基本上向後端請求並獲得新數據{卡住})
謝謝。
當你開始事件時,你會得到什麼錯誤? – Karim
沒有錯誤 – ThatBird