2016-12-26 1 views
0

Я пытаюсь преобразовать дату из своего углового кода "/ Date (1481843459627) /" в любой понятный формат даты.Угловой формат даты JS для longdatestring

Я пробовал this link, но я был успешным, только если ввод был отметкой времени.

Любые предложения?

+0

Dont вы получаете значение даты для 'Date (1481843459627)'? – azad

+0

нет. Я тоже попытался создать угловой встроенный фильтр. не удачи – Kurkula

+2

преобразуйте значение в новую дату (1481843459627), затем попробуйте фильтр угловой даты –

ответ

1

Вы можете форматировать дату, создав фильтр, который преобразует эту дату в форматированный выход.

var app = angular.module('app',[]); 
app.filter('ctime', function($filter){ 
    return function(jsonDate){ 
    var date = new Date(parseInt(jsonDate.substr(6))); 
    var filterDate = $filter('date')(date, "MMMM d, y"); 
    return filterDate ; 
    }; 

}); 
app.controller('fCtrl', function($scope){ 
    $scope.date = '/Date(1481843459627)/'; 
}); 

Затем вы можете сделать в HTML, как этот

<p ng-bind="date | ctime"></p> 
2

Что-то вроде этого:

{{1481843459627 | date:'medium'}} 

Легкий и гладкий.

В JavaScript вы можете просто использовать:

var dateNew = new Date(1481843459627); 
1

Вы можете напрямую использовать формат в странице просмотра или фильтра в контроллере. https://docs.angularjs.org/api/ng/filter/date

<div ng-app="app"> 
    <div ng-controller="homeCtrl"> 

    {{date | date :'dd/MMM/yyyy'}} 
    </div> 
</div> 

Проанализируйте дату в формате необходимой даты. Поскольку указанное значение не является допустимым форматом даты. Поэтому для преобразования даты сначала необходимо преобразовать в правильный формат. например 1481843459627, и нужно удалить оставшуюся строку.

var val ="/Date(1481843459627)/"; 
var date = new Date(parseInt(val.substr(6))); 
1

Используйте простую угловую подачу даты для этой цели.

<!DOCTYPE html> 
 
<html> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
 

 
<body> 
 

 
    <div ng-app="myApp" ng-controller="datCtrl"> 
 

 
     <p>Date = {{ today | date }}</p> 
 
     <p>{{today | date:'dd-MM-yyyy'}}</p> 
 
    </div> 
 

 
    <script> 
 
     var app = angular.module('myApp', []); 
 
     app.controller('datCtrl', function ($scope) { 
 
      $scope.today = 1481843459627; //Your date parameter 
 
     }); 
 
    </script> 
 

 
    <p>The date filter formats a date object to a readable format.</p> 
 

 
</body> 
 

 
</html>

Узнайте больше о угловых даты фильтров here

Смежные вопросы