Moment.js shows 00/Fr/2021 [已结束]

Moment.js shows 00/Fr/2021 [closed]

提问人:Purva Parulekar 提问时间:9/22/2023 最后编辑:jakub_marchwianyPurva Parulekar 更新时间:9/25/2023 访问量:41

问:


这个问题是由一个错别字或一个无法再重现的问题引起的。虽然类似的问题可能在这里成为主题,但这个问题的解决方式不太可能帮助未来的读者。

2个月前关闭。

我正在尝试使用下面的 React 函数更改日期的格式。

我过世的日期是 2021-12-31

我的功能如下

export const getDate = (date) => {
    if (date?.length > 0) {
     moment(date);
    }
    return moment(date).format('mm/dd/yyyy');
};

两个问题:

  1. 如果出现以下情况,即使日期的长度> 0,控制权也不会进入。

  2. 当我打印时,它给出的价值为return moment(date).format('mm/dd/yyyy');00/Fr/2021

JavaScript reactjs momentjs 日期格式

评论

0赞 Jaromanda X 9/22/2023
几分钟不是瞬间吗?mm
0赞 Purva Parulekar 9/22/2023
哦,好的,但是我怎样才能得到月份日期和年份
0赞 Purva Parulekar 9/22/2023
此外,如果即使 hough 长度大于 0,则控制永远不会进入
0赞 Andrei 9/22/2023
应该是 DD 而不是 dd
0赞 Jaromanda X 9/22/2023
以为你已经想通了......月/日/年/年

答:

1赞 Lars Vonk 9/22/2023 #1

您使用了错误的字符串来格式化。就像评论中解释的那样,是 分钟 en 是一天 一句话。您应该使用 instead 而不是获取月份,而不是获取日期作为数字。mmddMMmmDDdd

以下是您可以在其中找到的文档:https://momentjs.com/docs/#/parsing/string-format/

将来,当您遇到困难时,最好仔细阅读文档;-)

评论

1赞 Jaromanda X 9/22/2023
还有YYYY ...看来OP需要充分解释
0赞 Purva Parulekar 9/22/2023
好的,这很有帮助!
0赞 Purva Parulekar 9/22/2023
但是我仍然有一个问题,控件永远不会进入 if 条件,我只想在长度大于 0 时格式化日期
1赞 Jaromanda X 9/22/2023
@LarsVonk - 很可能在更高版本中,但我使用的 momentjs 版本是:pyyyyyyyy
1赞 Jaromanda X 9/22/2023
@PurvaParulekar - 代码实际上什么也没做,因为你“扔掉”了调用的结果......或者是......还是你在传递一个字符串?无论哪种方式,if 代码都是没有意义的,实际上并没有做任何有用的事情ifmoment(date);2021-12-311978