Momentjs:将12小时转换为Date对象

时间:2016-09-24 16:06:50

标签: javascript angularjs momentjs angular-moment

我正在尝试将12小时字符串转换为24日期对象

day.from = day.from || moment("6:00", ["h:mm"]).format("HH:mm");

但是我收到了这个错误:

angular.js:11706 Error: [ngModel:datefmt] Expected `6:00` to be a date

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

Here是一个工作小提琴,不会给我带来任何错误

 moment("6:00", ["h:mm"]).format("HH:mm") // working fine

答案 1 :(得分:0)

错误消息让我认为您的date.from应该是Date对象而不是String。请注意format返回一个String。 要从中获取Date对象,您可以使用toDate(),因此您将拥有以下代码:

day.from = day.from || moment("6:00", "h:mm").toDate();

PS。您在解析字符串时不需要一系列格式,因为其中只有一个元素,这就是我使用"h:mm"代替的原因["h:mm"]