如何使用angularjs格式化时刻日期

时间:2017-11-17 18:24:55

标签: angularjs

我正在使用angularjs。

我需要格式化片刻日期。

正确安装Moment并正常工作。

我有一个变量mydate显示如下。

我的代码是:

$scope.mylabel= moment(date).format('YYYY-MM-DD');

之后,我得到$ scope.mylabel ='无效日期'

我做错了什么?

mydate是:

{date: r, mdp: {…}, selectable: true, $$hashKey: "object:156"}
$$hashKey:
"object:156"
date:
r
_d:Fri Nov 10 2017 00:00:00 GMT-0200 (Horário brasileiro de verão) {}
_isAMomentObject:true
_isUTC:false
_isValid:true

完整的代码是:

我正在使用下一个小部件:

https://github.com/arca-computing/MultipleDatePicker

//标记

<div class="col-sm-3">
    <multiple-date-picker  calendar-id="'myId2'" ng-model="myDate" 
    day-click="oneDaySelectionOnly"></multiple-date-picker>
</div>

//控制器

angular.module("clinang")
.controller('agendaGeralController'......
 $scope.myDate = [];
 $scope.myDate.push(moment());
 $scope.oneDaySelectionOnly = function (event, date) {
    $scope.mylabel= moment(date).format('YYYY-MM-DD')
    //I also tried date.format('YYYY-MM-DD') and both result in "invalid date")
    $scope.myDate.length = 0;
};
]);

1 个答案:

答案 0 :(得分:0)

如果您添加moment.js且日期是有效日期,则应获得所需的输出

&#13;
&#13;
var app = angular.module('app', [])
function Ctrl($scope) {
    $scope.date = '2012-11-20';
    $scope.formattedDate = moment($scope.date).format('YYYY/MM/DD');
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/moment@2.19.2/moment.js"></script>
<div ng-app="app">
    <div ng-controller="Ctrl">
        <div>
            Non-Formatted Date : {{date}}
            <br><br>
            Formatted Date: {{formattedDate}}
        </div>
      
    </div>    
</div>
&#13;
&#13;
&#13;

相关问题