【发布时间】:2020-11-22 22:45:48
【问题描述】:
简报:
您好,我创建了一个钩子useDate() 来显示当前时间和日期,如下所示:
interface ReturnDate {
time: string;
date: string;
wish: string;
}
export const useDate = (): ReturnDate => {
const locale = 'en';
const today = new Date();
const day = today.toLocaleDateString(locale, { weekday: 'long' });
const date = `${day}, ${today.getDate()} ${today.toLocaleDateString(locale, { month: 'long' })}\n\n`;
const hour = today.getHours();
const wish = `Good ${(hour < 12 && 'Morning') || (hour < 17 && 'Afternoon') || 'Evening'}, `;
const time = today.toLocaleTimeString(locale, { hour: 'numeric', hour12: true, minute: 'numeric' });
return {
date,
time,
wish,
};
};
我在下面的组件中使用它,如下所示:
const ProfileGreetings: FC = () => {
const { firstName } = useUserDetails();
const { date, time, wish } = useDate();
return (
<div className="greetings-container">
<h1>
{wish}
<PrimaryText text={`${firstName || ''}!`} />
</h1>
<div>
<h3>
{date}
<br />
{time}
</h3>
</div>
</div>
);
};
应用中的日期/时间格式:
8 月 2 日,星期日
晚上 11:54
问题陈述:
目前发生的情况是日期和时间在我刷新页面之前不会更新。有什么方法可以实时更新以下所有内容?
我正在考虑使用 每 1 分钟间隔一次来计算更新的时间和日期,但我真的不知道这是否是个好主意。我也不知道如何开始以及如何清除?
谢谢! :)
【问题讨论】:
标签: javascript reactjs date redux react-hooks