2017-04-18 5 views
0

Nach dem Deserialisieren von JSON vom Server habe ich Datum-Zeit in Millisekunden: $scope.JDT = "1492499995056";. Ich kann die Bereichsvariable 'JDT' in meiner Ansicht mit dem Filter anzeigen:Wie konvertiert man Millisekunden in formatierte DateTime in AngularJS

{{JDT | Datum: "dd/MM/yyyy h: mm: ss a"}}

... aber brauche ich nicht wirklich. Ich möchte diesen Filter stattdessen in meinem Bereich verwenden, um eine andere Bereichsvariable durch solch formatierte Daten zu füllen, aber ich kann keinen Weg finden, dies zu tun.

Antwort

1

die Filter wie dies in der Steuerung verwenden

$scope.sample = $filter('date')($scope.JDT,"dd/MM/yyyy h:mm:ss a");

Demo

angular.module("app",[]) 
 
.controller("ctrl",function($scope,$filter){ 
 
$scope.JDT = "1492499995056" 
 

 
$scope.sample = $filter('date')($scope.JDT,"dd/MM/yyyy h:mm:ss a"); 
 
console.log($scope.sample) 
 

 
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="app" ng-controller="ctrl"> 
 
    
 
</div>

+0

... danke, sehr hilfreich ... – cembo

0

Sie $filter in Ihrem Controller injizieren können und haben so etwas wie diese:

$scope.someVariable = $filter('date')($scope.JDT, 'dd/MM/yyyy h:mm:ss a') 
+0

... Danke, ich habe es schon einmal ausprobiert und funktionierte nicht, ich habe eine Stunde lang es zu analysieren, aber ohne Erfolg und jetzt, wenn ich Ihr Beispiel sehe ich habe erkannt, dass ich nicht mehr als $ Filter in injizierte Controller :) ... – cembo

Verwandte Themen