IST到dd / MM / yyyy格式

时间:2017-12-11 09:49:55

标签: angularjs date-formatting

我正在尝试将Sun Dec 10 2017 00:00:00 GMT+0530 (India Standard Time)(从JSON获取)转换为'dd/MM/yyyy'格式

在html ng-repeat中我写了这样的{{row.data | date:'dd/MM/yyyy''}},但它不起作用。请建议我只在html页面转换的方式。

2 个答案:

答案 0 :(得分:2)

你可以使用

item.date = $filter('date')(new Date(item.date), "dd/MM/yyyy");

在您的控制器中。

您需要将日期从string转换为Javascript date object才能使用date过滤器。

<强>更新

使用自定义过滤器:

app.filter('myFormat', function($filter) {
    return function(x) {
      return $filter('date')(new Date(x), "dd/MM/yyyy");

    };
});

并在html中使用它:

{{row.data | myFormat}}

答案 1 :(得分:1)

请尝试以下演示。

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <meta charset="utf-8" />
</head>
<body>
    <div ng-app="app" ng-controller="ctrl">
        {{date | mydate}}
    </div>

    <script src="../lib/angular.js"></script>
    <script>
        var app = angular.module('app', []);
        app.filter('mydate', function ($filter) {
            return function (input) {
                return $filter('date')(new Date(input), "dd/MM/yyyy")
            }
        });
        app.controller('ctrl', function ($scope) {
            $scope.date = 'Sun Dec 10 2017 00:00:00 GMT+0530';
        });

    </script>

</body>
</html>