私のコメントに記載されているように、setInterval
を使用して特定の時間間隔で日付の変更を確認できます。
var app = angular.module('dateChecker', []);
app.controller('MainCtrl', function($scope, $interval) {
function getTodaysDate(){
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yyyy = today.getFullYear();
if(dd<10) {
dd='0'+dd
}
if(mm<10) {
mm='0'+mm
}
today = mm+'/'+dd+'/'+yyyy;
return today;
}
$scope.oldDate = getTodaysDate();
$interval(function dateChecker() {
if($scope.oldDate === getTodaysDate()){
console.log('No change');
} else {
console.log('date changed');
}
}, 1000);
});
これは毎秒の時間をチェックし、それに応じて更新されます。 時間を無視して上記のdate
のみをチェックしています。必要に応じて条件を変更できます。
これを確認してください:http://stackoverflow.com/questions/3367505/detecting-changes-to-system-time-in-javascript – superUser