[英]React native moment formatted date in invalid
我的 RN 應用程序中有以下代碼。
getFormattedDate = (date) => {
const formattedDate = moment(new Date(date)).format('MMMM, DD YYYY');
return { date: formattedDate };
}
當我在模擬器上運行它時,格式化的日期顯示正確。 但是當我在設備上運行它時,它說,無效日期。 我在這里做錯了什么?
根據您的評論,我假設date
參數是一個字符串。 如果要從字符串創建新時刻,則必須傳遞日期格式。 然后可以使用.format
格式化新創建的時刻以再次獲取字符串。
改變:
const formattedDate = moment(new Date(date)).format('MMMM, DD YYYY');
到:
const formattedDate = moment(date,"MMM, DD YYYY").format("MMMM, DD YYYY");
在這里您可以找到有關字符串格式的更多詳細信息。
Moment 比 new Date 慢 150 倍。 如果您想使用此代碼工作,請像這樣嘗試。
getFormattedDate = async (date) => {
const formattedDate = await moment(new Date(date)).format('MMMM,DD YYYY');
return { date: formattedDate };
}
你可以在這里閱讀更多細節https://github.com/moment/moment/issues/731
由於性能,我建議避免使用時刻。 使用 new Date () 然后獲取日、月和年,並通過根據需要加入字符串來更改為合適的格式。 僅使用日期庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.