useEffect副作用的使用

概念:接收一个包含命令式、且可能有副作用代码的函数

使用时有几种使用方式:

        1.不带第二个参数。执行时机:初始执行,每次更新之后都要执行。

        可以模拟 componentDidmount + componentDidUpdate

useEffect(() => {
  // 副作用函数的内容
})

        2.带第二个参数,参数是空数组。执行时机:只执行第一次。

        模拟 componentDidMount

useEffect(() => {
  // 副作用函数的内容
}, [])

        使用场景:1 事件绑定 2 发送请求获取数据 等。  

        3.带第二个参数(数组格式),并指定了依赖项。执行时机:(1)初始执行一次 (2)依赖项的值变化了,执行一次

        

useEffect(() => {
  // 副作用函数的内容
}, [依赖项1,依赖项2,....]) // 这里的依赖项就是组件中定义的状态

        4.依赖项为空,没有具体的副作用函数,有副作用函数的清理函数

        模拟:componentWillUnMount

useEffect(() => {
  
  return () => {
  	// 副作用函数的清理函数,模拟 componentWillUnMount
  }
  
}, [])

猜你喜欢

转载自blog.csdn.net/hx_programmer/article/details/121302237