关于angularjs:Angular Material DatePicker ng-model包含时间

Angular Material DatePicker ng-model includes time

1
2
3
4
<md-input-container>
        <label>Enter date</label>
        <md-datepicker ng-model="newResearch.plannedStartDate"></md-datepicker>
</md-input-container>

计划开始日期的值为"1985-03-05T16:00:00.000Z"
我需要的价值仅为1985-03-05。


这是不可能的,因为ng-model需要一个日期。 来自文档:

enter image description here

"1985-03-05T16:00:00.000Z"实际上是console.log()显示Date对象的方式(可能使用JSON.stringify())。

如果您检查此CodePen,您将看到以下代码行:

1
2
3
4
console.log(typeof $scope.newResearch.plannedStartDate);
// This is a check for a Date object from Christoph's answer - http://stackoverflow.com/a/643827/782358
console.log(typeof $scope.newResearch.plannedStartDate.getMonth === 'function');
console.log(JSON.stringify($scope.newResearch.plannedStartDate));

产生以下输出:

enter image description here


在您的控制器中请申请:

1
2
var newDate = $filter('date')(value,"yyyy-MM-dd");
$scope.newResearch.plannedStartDate = newDate;

通过使用过滤器,您可以实现您的需求。