当我们可以使用 useEffect hook 来在其中制作 side Effect 时,React 函数式组件如何仍然是“纯函数”?

问题描述 投票:0回答:1

当我们可以使用 useEffect hook 来在其中创建副作用时,React 函数式组件如何仍然是“纯函数”?有人可以解释一下这种情况吗?在这种情况下 React 仍然是“纯函数”吗?非常感谢

reactjs
1个回答
0
投票

React 功能组件必须是纯函数,这意味着在该函数执行期间运行的代码不应该产生副作用。该函数的执行发生在“渲染”阶段。

useEffect 中的代码在渲染阶段之后运行。到了这个阶段,React功能组件的执行就完成了,并且允许产生副作用。 请参阅文档此处 附注我意识到这是一个老问题,但我认为它值得一个答案。

© www.soinside.com 2019 - 2024. All rights reserved.