2017-08-26 1 views
0

私はAngularJSにこれを変換したいのですが、変換 `setInterval`

// Set the date we're counting down to 
    var countDownDate = new Date("Oct 1, 2022 15:37:25").getTime(); 
    // Update the count down every 1 second 
    var x = setInterval(function() { 

     // Get todays date and time 
     var now = new Date().getTime(); 

     // Find the distance between now an the count down date 
     var distance = countDownDate - now; 

     // Time calculations for days, hours, minutes and seconds 
     var days = Math.floor(distance/(1000 * 60 * 60 * 24)); 
     var hours = Math.floor((distance % (1000 * 60 * 60 * 24))/(1000 * 60 * 60)); 
     var minutes = Math.floor((distance % (1000 * 60 * 60))/(1000 * 60)); 
     var seconds = Math.floor((distance % (1000 * 60))/1000); 

     $('#clock-days').text(days); 
     $('#clock-hours').text(hours); 
     $('#clock-minutes').text(minutes); 
     $('#clock-seconds').text(seconds);  
    }, 1000); 

を開始するための第一の問題は、数学の機能が利用できないこととの間隔を記述する方法です私は知りません?

+0

数学ができませんか? anglejsまたは角度? –

答えて

3

コントローラーでを$intervalに置き換え、var変数をスコープ変数に変更するだけで、以下のような違いを調べて違いを特定できます。

DEMO:JSFiddle

var app = angular.module('myApp', []); 
app.controller('MyController', ['$scope', '$interval', function($scope, $interval) { 
    var countDownDate = new Date("Oct 1, 2022 15:37:25").getTime(); 
    // Update the count down every 1 second 
    var x = $interval(function() { 

     // Get todays date and time 
     var now = new Date().getTime(); 

     // Find the distance between now an the count down date 
     var distance = countDownDate - now; 

     // Time calculations for days, hours, minutes and seconds 
     $scope.days = Math.floor(distance/(1000 * 60 * 60 * 24)); 
     $scope.hours = Math.floor((distance % (1000 * 60 * 60 * 24))/(1000 * 60 * 60)); 
     $scope.minutes = Math.floor((distance % (1000 * 60 * 60))/(1000 * 60)); 
     $scope.seconds = Math.floor((distance % (1000 * 60))/1000); 
    }, 1000); 
}]);