我正在建立一个react应用程序,我试图提取月份,日期和年份,在react中使用date.toLocaleString,我的网站崩溃了,显示一个空白页面,它没有显示我的组件。这应该输出月份(如八月),年份(如1967年)和日期(如15年)
function ExpenseDate(props) {
const month = props.date.toLocaleString("en-US", { month: "long" });
const day = props.date.toLocaleString("en-US", { day: "2-digit" });
const year = props.date.getFullYear();
return (
<div>
<div>{month}</div>
<div>{day}</div>
<div>{year}</div>
</div>
)
}
4条答案
按热度按时间pftdvrlh1#
你在ExpenseItem中调用props了吗(我猜)?试着在div之间这样做。
chy5wohz2#
当我开始在ExpenseItem和ExpensDate之间拆分组件时,我正在学习相同的课程并遇到了相同的问题。
你需要做的是:
在expenses数组中,将date值设为新日期
的字符串
然后,将该日期字符串作为正确
向下传递到ExpenseDate组件
最后,使用ExpenseDate组件中日期字符串在每次呈现ExpenseDate组件时显示一个新日期。
这是在每个ExpensDate组件
中呈现不同日期时的外观
我希望这对你或者下一个在学习这门课时遇到这个问题的人有帮助。
fiei3ece3#
我用这种方法解决了这个问题,将状态添加到一个对象中,而不更改日期
ExpenseFrom.js代码如下:
ExpenseDate.js代码如下:
我觉得这个可能行得通,不需要改日期,问题出在传递 prop 上。
aij0ehis4#
我在React课程中遇到了同样的问题。我只是用另一个时区替换了美国时区,这对我很有效。