使用钩子在反应功能组件中多次渲染

Nah*_*lam 4 reactjs react-hooks use-effect

其实我没有得到这个问题的正确观点。所以寻求帮助。我有这个状态全功能组件。我在这里注意到的是,当我使用 useEffect 钩子获取数据时,我会正确地得到响应。

问题是,当我在 return 语句中执行 console.log("ok") 时,它会在控制台中多次提供输出。图片添加如下:

这是我的状态和 useEffect 钩子

在此处输入图片说明

这是我的返回函数

在此处输入图片说明

这是我每次浏览页面时得到的控制台输出。 在此处输入图片说明

为什么 console.log("ok") 执行多次?

Dav*_*yon 9

它不是执行multiple次数,而是执行 5 次:

  1. useEffect (第一次渲染)
  2. setMovies
  3. setHeroImage
  4. setCusrrentPage
  5. setTotalPages

useEffect有 deps of[]所以这只发生在第一次渲染。然后您要更改状态 4 次,因此会发生重新渲染。这并不意味着 DOM 更改了 5 次。