Appearance

useEffect无限循环问题

zhaoyifan2023-02-07frontEndreact

INFO

基本类型、组件状态(useState)可以放到依赖里,但是对象、数组、函数等引用类型不可以放到依赖里

<div id="app"></div>
<script type="text/babel">
  // 基本类型、组件状态(useState)可以放到依赖里,但是对象、数组、函数等引用类型不可以放到依赖里
  const { useEffect, useMemo, useState } = React;
  function App () {
    const [num, setNum] = useState(0)
    // let dep = { name: 'jack' } // 无限循环
    // let dep = [] // 无限循环
    let dep = 0 // 不无限循环
    useEffect(() => {
      console.log('App useEffect')
      setNum(num + 1)
    }, [dep])
    return <div>
    </div>
  }

  ReactDOM.render(<App />, document.getElementById('app'))

</script>
Last Updated 2/6/2023, 4:24:14 PM