2017-07-30 58 views
0

我用materialize datepicker來選擇法語格式的日期。現在我需要將此日期格式化回日期對象,以便我可以在我的api中使用它。以下是我嘗試的日期轉換回一個正常的格式:時刻格式詳細日期作爲日期對象

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

但我收到Invalid Date。有沒有辦法將這個日期轉換回時刻?或者我可以以某種方式掛鉤到物化組件檢索正常日期?

回答

2

您需要在嘗試解析法語日/月份名稱之前設置fr語言環境。

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

您可以分析您的輸入字符串傳遞語言環境參數,見moment(String, String, String)文檔:

截至版本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>

如需進一步信息見Changing locale globallyChanging locales locally