【发布时间】:2019-05-07 07:34:31
【问题描述】:
我使用 setInterval 来更新时间,因为我设置了 60000s 作为间隔。每当我加载页面时,我都会在刷新页面后 1 分钟后更新时间和时间,但与时间无关。因此更新时间会有一些延迟。
const UpdateTime= (props) => {
let date = new Date();
const [dateTime, setDateTime] = useState({
curTime: date.toLocaleDateString(),
timeStr: date.toLocaleTimeString().replace(/:\d{2}\s/, " "),
curDay: date.toLocaleDateString("en-US", { weekday: "short" })
});
useEffect(() => {
const interval = setInterval(() => {
let date = new Date();
setDateTime({
curTime: date.toLocaleDateString(),
timeStr: date.toLocaleTimeString().replace(/:\d{2}\s/, " "),
curDay: date.toLocaleDateString("en-US", { weekday: "short" })
});
},
60000
);
return () => { clearInterval(interval) }
}, [])
}
加载页面后,每当 date.getSeconds() 从那里达到 00 时,我必须触发 setinterval 函数。
【问题讨论】:
标签: javascript jquery reactjs date react-hooks