我有一个函数react组件,该组件的计数器从10000开始,然后变为0。
我在组件安装期间使用useEffect钩子设置了setInterval回调。回调然后更新计数器状态。
但我不知道为什么,count价值永远不会减少。每次回调运行count为10000。
(我正在使用react&react-dom版本16.8.3)
功能组件如下:
import React, { useState, useEffect, useRef } from 'react'
const Counter = () => {
const timerID = useRef()
let [count, setCount] = useState(10000)
useEffect(() => {
timerID.current = setInterval(() => {
//count here is always 10000
if (count - 1 < 0) {
setCount(0)
} else {
setCount(count - 1)
}
}, 1)
}, [])
return <h1 className="counter">{count}</h1>
}
export default Counter
holdtom
青春有我
相关分类