在我的应用程序中,我使用momemt类型的$ scope变量。我使用来自Angular Materialjs的md-datepicker
来获取ng-model的变更日期变量。
md-datepicker
只使用日期类型,我可以从瞬间转换,但在更改数据后,md-datepicker
$scope
变量将类型从Moment更改为Date。
如何将结果md-datepicker
日期类型转换回时刻类型?这需要在其他使用时刻的功能中使用它。
<md-datepicker ng-model="momentfrom" md-open-on-focus="true" name="dateFrom" >
</md-datepicker>
使用momentfrom
后的md-datepicker
变量将类型更改为Date,这需要转换为时刻。
app.config(['$mdDateLocaleProvider', function ($mdDateLocaleProvider) {
$mdDateLocaleProvider.parseDate = function(dateString) {
var m = moment(dateString, ["DD.MM.YYYY"],true);
return m.isValid() ? m.toDate() : new Date(NaN);
};
$mdDateLocaleProvider.formatDate = function (date) {
return date ? moment(date).format('DD.MM.YYYY') : '';
};
}]);
您的moment
格式错误。在formatDate函数中使用它:
return moment(date).format('YYYY-MM-DD');
如果要在加载时将日期设置为null,则使用更改返回到此:
return date ? moment(date).format('YYYY-MM-DD') : '';
有关AngularJS Material docs功能的更多信息,请参阅$mdDateLocaleProvider
。