将多个UseEffect重构为一个有什么缺点?

What are the disadvantages of refactoring multiple UseEffect into one?

我为不同的回调函数使用了多个useEffect。现在,我了解到 know 我可以将多个 useEffect 重构为一个,所有的回调函数都有不同的依赖关系,所以将所有 useEffect 重构为一个是个好主意还是有更好的优化方法代码不需要使用多个 useEffect 或使用多个 useEffect 是常见的做法?

您想对每个不同的问题进行 useEffect。 因此,在您提到的示例中,您希望在 useEffect 上添加和删除侦听器。如果您还有其他顾虑,请添加不同的 useEffect。 检查的好方法是您是否可以从组件中删除 useEffect 并且其余部分不会受到影响

这取决于您的依赖项(您的 useEffect)和组件,我认为最好为您的每个概念拆分 useEffect,例如在一个 useEffect 中您有 api 调用,而在另一个 useEffect 中您有事件侦听器并删除侦听器和依赖项,因为我认为如果将它们组合在一起,可能会产生意外的重新渲染和副作用