React:实现一个定时器计数器,每秒自动+1

编程入门 行业动态 更新时间:2024-10-21 05:41:52

React:实现一个<a href=https://www.elefans.com/category/jswz/34/1768257.html style=定时器计数器,每秒自动+1"/>

React:实现一个定时器计数器,每秒自动+1

需求:实现一个定时器计数器,每秒自动+1

import React, { useState, useEffect } from "react";export default function App() {let [count, setCount] = useState(0);useEffect(() => {let timer = setInterval(() => {setCount(count + 1);}, 1000);return () => {clearInterval(timer);};}, []);return <div>{count}</div>;
}

以上写法有一个问题,页面会永远停留在数字1,并不会发生变化

正确的写法如下

import React, { useState, useEffect } from "react";export default function App() {let [count, setCount] = useState(0);useEffect(() => {let timer = setInterval(() => {setCount((preValue) => {return preValue + 1;});}, 1000);return () => {clearInterval(timer);};}, []);return <div>{count}</div>;
}

方法签名

setCount(value)setCount(preValue=>newValue)

参考文章

  1. 「React」React Hooks与setInterval的踩坑问题总结

更多推荐

React:实现一个定时器计数器,每秒自动+1

本文发布于:2023-11-15 23:12:43,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1608882.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:定时器   计数器   React

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!