时刻格式详细日期为日期对象

时间:2017-07-30 18:15:38

标签: javascript angular typescript momentjs materialize

我使用materialize datepicker来选择法语格式的日期。现在我需要将这个日期格式化回日期对象,以便我可以在我的api中使用它。以下是我尝试将日期转换回普通格式的方法:

moment("dimanche 30 juillet 2017","dddd D MMMM YYYY").locale('fr').toDate();

但我收到了Invalid Date。有没有办法使用时刻转换此日期?或者我可以以某种方式挂钩具体化组件来检索正常日期?

2 个答案:

答案 0 :(得分:2)

您需要在尝试解析法语日/月名之前设置fr语言环境。

moment.locale('fr');
moment("dimanche 30 juillet 2017","dddd D MMMM YYYY").toDate();

答案 1 :(得分:2)

您可以解析传递语言环境参数的输入字符串,请参阅moment(String, String, String) docs:

  

从版本 2.0.0 开始,区域设置键可以作为第三个参数传递给moment()moment.utc()

这是一份工作样本:



var m = moment("dimanche 30 juillet 2017", "dddd D MMMM YYYY", 'fr');
console.log(m.toDate());
console.log(m.format());

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment-with-locales.min.js"></script>
&#13;
&#13;
&#13;

有关详细信息,请参阅Changing locale globallyChanging locales locally