Ik haal gegevens uit een database en geef deze weer:
<ul>
<li ng-repeat="item in items>
<mydate>{{item.date}}</mydate>
</li>
</ul>
Waar {{item.date}}
een Unix-datum is, zoals 1374843600. Hoe kan ik het datumformaat instellen met behulp van AngularJS-richtlijnen? Is het mogelijk?
Toen ik het probeerde, kreeg ik een waarde van tag mydate –{{item.date}}
Antwoord 1, autoriteit 100%
Ik heb het probleem ondervonden met een unix-tijd die is geformatteerd als een aantal secondenvanaf het begin van het tijdperk of als een aantal millisecondendat wordt gebruikt in JavaScript. Dus strikt genomen converteert AngularJS geen Unix-tijdstempel naar Datum, maar een getal met milliseconden, dat 1000 keer groter is, dus eerst moet je je invoernummer met 1000 vermenigvuldigen, zoals dit:
<mydate>{{item.date * 1000 | date:'yyyy-MM-dd HH:mm:ss Z'}}</mydate>
Anders klopt je date niet.
Antwoord 2, autoriteit 41%
Gebruik de indeling date filter
als volgt:
<mydate>{{item.date * 1000 | date:'yyyy-MM-dd HH:mm:ss Z'}}</mydate>
Antwoord 3, autoriteit 2%
Als je een Unix-tijdstempel hebt, moet je je tijdstempel waarschijnlijk met 1000 vermenigvuldigen, aangezien de Unix-tijdstempel in seconden is en het AngularJs-datumfilter milliseconden nodig heeft.
vm.milliseconds = Date('1441981121' * 1000);
gebruik dan de $filter() functie
var date = $filter('date')(vm.milliseconds, 'd MMMM yyyy');
of je kunt het gebruiken in ng-bind
<span ng-bind="myController.milliseconds | date : 'd MMMM yyyy'"></span>
Antwoord 4
U moet het datumfilter gebruiken dat al door angular wordt geleverd:
hier
Antwoord 5
yourapp.filter('timestampToDate', function () {
return function (timestamp) {
var date = new Date(timestamp * 1000);
var dateObject = date.getFullYear() +'/'+ ('0' + (date.getMonth() + 1)).slice(-2) +'/'+ ('0' + date.getDate()).slice(-2);
return dateObject;
};
});
Gebruik:
{{timestamp | timestampToDate}}
Antwoord 6
Er is een richtlijn voor die rsTime wordt genoemd.
<rs-time start-time="1478513323" digital-format="'ddd MMM d h:mm TT'"></rs-time>
Bekijk de demo op Plunker.
Hieronder staan verschillende tijdsformaten:
M/d/y - 11/7/2016
HH:mm:ss - 16:02:31 (24hrs formate)
hh:mm:ss TT - 04:03:10 PM
ddd MMM d h:mm TT - Mon Nov 7 at 4:04 PM
Ga voor documentatie naar Github