2017-01-04 4 views
0

Ich möchte eine Funktion erstellen, die es mir erlaubt, 60 Sekunden von der aktuellen Zeit abzuziehen, und dann 60 Sekunden von dieser neuen angepassten Zeit und so weiter.Wie subtrahiere ich 60 Sekunden von einer Zeit im Winkel

wie diese Schritte aber jetzt bin ich stecken ...

Winkel:

var t = new Date(); 
t.setSeconds(t.getSeconds() - 60); 
$scope.newt = t; 
$scope.newt = $filter('date')(t, "HH:mm"); 


$scope.oneminuteless = function() {  
    ??? 
}; 

HMTL:

<div>Time {{t}} | New Time: {{newt}}</div> 
<button ng-click="oneminuteless()"><i class="icon icon-chevron-left"></i></button> 

Ich weiß nicht, wie von der eingestellten Zeit subtrahieren so dass es in der Zeit zurückgeht, solange du auf den Knopf klickst, es benutzt immer die aktuelle Zeit.

Danke!

+0

Sie wollen wahrscheinlich MomentJS verwenden, hier ist eine [Winkel Richtlinie] (https://github.com/urish/angular-moment) für sie. Dann können Sie Dinge tun wie 'moment (t) .subtract (60, 'Sekunden')' – BrandonReid

+0

danke für den Tipp. Moment funktioniert, aber wie durchlaufe ich die generierten Zeiten? – nrunit

Antwort

1

Wenn ich verstehe, was Sie erreichen wollen, können Sie wie folgt vorgehen:

Controller:

$scope.t = new Date(); 
$scope.newt = new Date($scope.t.getTime() - 60000); 

$scope.oneminuteless = function(){ 
    $scope.newt = new Date($scope.newt.getTime() - 60000); 
} 

Ihre HTML:

<div>Time {{t | date: 'HH:mm'}} | New Time: {{newt | date: 'HH:mm'}}</div> 

Verwendung Winkelfilter Datum anzuzeigen nur Stunden und Minuten

getTime() wird die Anzahl der Millisekunden zurückgeben seit 1970/01/01.

Probe Arbeiten https://plnkr.co/edit/2TtLRoVro4ccidxWznlz?p=preview

+0

danke guten sir! – nrunit

+0

Ich bin froh, dass es funktioniert hat! –

Verwandte Themen