'u yeniden başlatın Her 10 saniyede bir tekrarlıyorum. Bu iyi çalışıyor. Emirleri gösterir. Şimdi bir kabul siparişi fonksiyonu istiyorum. Ama bu tıklandığında aradaki aralığı düzeltmek istiyorum. Ve sipariş iadeleri kabul edildiğinde, bu aralığı tekrar devam ettirmek istiyorum.Bir açısal aralığı duraklatıp
Bunu yapmanın en iyi yolu nedir? Sen $interval
bir değişken oluşturmak gerekir
if ($auth.isAuthenticated()) {
//request
$scope.checkNewOrders = function(){
newOrderService.getNewOrders().then(function (response) {
//console.log(response.data.status);
if (response.data == 'token_error') {
$auth.logout();
}
if (response.data.status == 'success') {
$rootScope.openOrders = response.data.data;
}
if (response.data.status == 'no_orders') {
$rootScope.openOrders = false;
}
});
};
//Put in interval, first trigger after 10 seconds
$interval(function(){
$scope.checkNewOrders();
}.bind(this), 10000);
//invoke initialy
$scope.checkNewOrders();
}
$scope.acceptOrder = function(orderid) {
console.log(orderid);
}
Aralığı iptal etmek için '$ interval'' '$ interval.cancel'' dönüş değerini iletebilirsiniz. Ayrıca, bir boole bayrağı ayarlanmışsa döndüren ve hiçbir şey yapmayan aralık işlevinin içinde bir dal da olabilir. –