我有一個表格,用戶用以下格式輸入日期:YYYY-MM-DD如何從mongoDB獲取日期並使用moment.js顯示它?
我在Mongo DB中存儲日期。默認情況下,MongoDB將其存儲爲UTC日期。
例子: 用戶輸入2018年2月6日 蒙戈店:「星期二2018年2月6日00:00:00 GMT + 0000(UTC)」
可以說,我想顯示此追溯到用戶。
下面的代碼給了我錯了日期:
var eventDateString = $('#hiddenDate').val() // Just gets the date as stored in mongo
var dateObj = new Date(eventDateString)
var dateMom = moment(dateObj).format('dddd, MMMM DD YYYY');
console.log(dateMom)
什麼會打印爲: 「星期一,2018年2月5日」 這是不正確的日期應該是二月6
爲什麼這是否發生?
我試圖這樣做是爲了解決這一問題:
var eventDateString = $('#hiddenDate').val();
$('#show-eventDate').text(moment.utc(eventDateString).format('dddd, MMMM DD YYYY'));
我得到正確的結果: 「星期二,2018年二月六日」
不過,我得到以下警告:
(棄用警告:提供的值不是以公認的ISO格式。 Date(),它在所有瀏覽器和版本中都不可靠。非ISO日期格式不鼓勵,並將在即將發佈的主要版本中刪除。請參閱http://momentjs.com/guides/#/warnings/js-date/瞭解更多信息....)
如何解決此問題?
我編輯了我的aswer修復代碼片段nd我知道'moment.utc',因爲我建議在我的答案的第一部分使用它(我只是忘記在片段中使用它)。我真的不承認爲什麼你標記爲接受你的第一個答案,爲什麼你發佈了這個新的答案,而不是評論我的或建議編輯它。 – VincenzoC
對不起。我對此很陌生 – Asool