感受hook里useEffect的执行顺序,hook倒计时
生活随笔
收集整理的這篇文章主要介紹了
感受hook里useEffect的执行顺序,hook倒计时
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
- 本文基于之前創(chuàng)建的react-app腳手架文件
- App.tsx
import React from 'react'function App() {const [count, setCount] = React.useState(5)console.log('1')React.useEffect(() => {// 實現(xiàn)count每一秒-1console.log('2')let timer = setInterval(() => {if (count > 0) {// console.log('count:', count)setCount(count - 1)}}, 1000)return () => {clearInterval(timer)}}, [count])console.log('3')return (<div className="App"><p>Hello,Dust</p><span>count:{count}</span></div>)
}export default App
- 執(zhí)行結(jié)果:
- 注意觀察每個
console.log的位置,執(zhí)行結(jié)果是實現(xiàn)一個5s的倒計時,每秒console里都會打印出"1,3,2" - 說明useEffect的內(nèi)容是最后執(zhí)行,先執(zhí)行之前之后的內(nèi)容,這樣也好理解"副作用"這個定義.
簡單一點:去掉倒計時功能
import React from 'react'function App() {console.log('1')React.useEffect(() => {console.log('2')}, [])console.log('3')return (<div className="App"><p>Hello,Dust</p></div>)
}export default App
- 執(zhí)行結(jié)果:(是不是直觀多了)
總結(jié)
以上是生活随笔為你收集整理的感受hook里useEffect的执行顺序,hook倒计时的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 肯德基优惠券怎么使用?
- 下一篇: 在react hook里使用mobx(配