import React, { useState, useEffect } from 'react'; import './Countdown.css'; const pad = (n) => String(n).padStart(2, '0'); export default function Countdown({ target = Date.now() + 3600000 }) { const [now, setNow] = useState(Date.now()); useEffect(() => { const t = setInterval(() => setNow(Date.now()), 1000); return () => clearInterval(t); }, []); const diff = Math.max(0, target - now); const d = Math.floor(diff / 86400000); const h = Math.floor((diff % 86400000) / 3600000); const m = Math.floor((diff % 3600000) / 60000); const s = Math.floor((diff % 60000) / 1000); return (
{d > 0 && ( {pad(d)} 天 )} {pad(h)} 时 : {pad(m)} 分 : {pad(s)} 秒
); }