react写一个倒计时
时间: 2023-07-07 17:37:15 浏览: 124
好的,以下是一个简单的React倒计时组件示例:
```jsx
import React, { useState, useEffect } from 'react';
const Countdown = ({ seconds }) => {
const [timeLeft, setTimeLeft] = useState(seconds);
useEffect(() => {
const interval = setInterval(() => {
if (timeLeft > 0) {
setTimeLeft(timeLeft - 1);
}
}, 1000);
return () => clearInterval(interval);
}, [timeLeft]);
return (
<div>
{timeLeft === 0 ? (
<p>倒计时结束!</p>
) : (
<p>倒计时剩余时间: {timeLeft}秒</p>
)}
</div>
);
};
export default Countdown;
```
使用方法:
```jsx
import React from 'react';
import Countdown from './Countdown';
const App = () => {
return <Countdown seconds={60} />;
};
export default App;
```
这个组件会接受一个`seconds`属性,表示倒计时的总秒数,每秒钟会更新一次剩余时间,并在倒计时结束时显示一条消息。组件内部使用了`useState`和`useEffect` Hook来实现状态和副作用的管理。
阅读全文