React中Hooks封装倒计时60S
React中Hooks封装倒计时60S
使用hooks对倒计时进行封装(TS版),结合useState,useEffect,useRef 以及定时器setInterval
useState对count进行数据初始化,后边结合setcount()方法对count进行修改useRef是作为定时器的一个Id,便于后面
React中Hooks封装倒计时60S
使用hooks对倒计时进行封装(TS版),结合useState,useEffect,useRef 以及定时器setInterval
- useState对count进行数据初始化,后边结合setcount()方法对count进行修改
- useRef是作为定时器的一个Id,便于后面清除定时器
- 第一次的useEffect是作为定时器的启动,传入一个空数组【】,不依赖任何项,只调用一次
- 第二次的useEffect是作为清除定时器使用,依赖于count的变化,故传入一个包含count的数组
import {useState,useEffect,useRef} from react export default function useTimes(start:number) {ct [count,setcount] =useState(start)ct timerRef=useRef<odeJS.Timer>()useEffect(()=>{=setInterval(()=>{setcount(c=>c-1)},1000)//清除副作用return ()=>{clearInterval()}},[])useEffect(()=>{if(count===0){clearInterval()}},[count])return count
}
#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
上传时间: 2024-05-07 12:20:49
下一篇:Atomikos中文说明文档
推荐阅读
留言与评论(共有 17 条评论) |
本站网友 缺b乐 | 23分钟前 发表 |
number) {ct [count | |
本站网友 蓬蒿菜 | 17分钟前 发表 |
后边结合setcount()方法对count进行修改useRef是作为定时器的一个Id,便于后面清除定时器第一次的useEffect是作为定时器的启动,传入一个空数组【】,不依赖任何项,只调用一次第二次的useEffect是作为清除定时器使用,依赖于count的变化,故传入一个包含count的数组 import {useState | |
本站网友 大行 | 26分钟前 发表 |
[count])return count } | |
本站网友 吻胸技巧 | 13分钟前 发表 |
[count])return count } | |
本站网友 卡塔尔汽车拉力赛 | 9分钟前 发表 |
1000)//清除副作用return ()=>{clearInterval()}} | |
本站网友 青岛it论坛 | 8分钟前 发表 |
useEffect | |
本站网友 chromium浏览器 | 9分钟前 发表 |
[])useEffect(()=>{if(count===0){clearInterval()}} | |
本站网友 同煤 | 26分钟前 发表 |
后边结合setcount()方法对count进行修改useRef是作为定时器的一个Id,便于后面清除定时器第一次的useEffect是作为定时器的启动,传入一个空数组【】,不依赖任何项,只调用一次第二次的useEffect是作为清除定时器使用,依赖于count的变化,故传入一个包含count的数组 import {useState | |
本站网友 中国3d打印技术 | 19分钟前 发表 |
1000)//清除副作用return ()=>{clearInterval()}} | |
本站网友 苏州公务员 | 6分钟前 发表 |
React中Hooks封装倒计时60S 使用hooks对倒计时进行封装(TS版),结合useState,useEffect,useRef 以及定时器setInterval useState对count进行数据初始化 | |
本站网友 常平万科 | 3分钟前 发表 |
useRef} from react export default function useTimes(start | |
本站网友 山地人 | 11分钟前 发表 |
useEffect | |
本站网友 可否冲破 | 5分钟前 发表 |
后边结合setcount()方法对count进行修改useRef是作为定时器的一个Id,便于后面清除定时器第一次的useEffect是作为定时器的启动,传入一个空数组【】,不依赖任何项,只调用一次第二次的useEffect是作为清除定时器使用,依赖于count的变化,故传入一个包含count的数组 import {useState | |
本站网友 浦航新城 | 20分钟前 发表 |
setcount] =useState(start)ct timerRef=useRef<odeJS.Timer>()useEffect(()=>{=setInterval(()=>{setcount(c=>c-1)} | |
本站网友 武汉长城宽带 | 25分钟前 发表 |
[])useEffect(()=>{if(count===0){clearInterval()}} | |
本站网友 氧化钙是什么意思 | 7分钟前 发表 |
[])useEffect(()=>{if(count===0){clearInterval()}} |