在组件内部使用钩子有问题吗?
Is there a problem in using hooks inside components?
我有我的主要 <App/>
并且在我的应用程序中我使用了多个 useState
挂钩。
在我的应用程序中,我还使用了一个名为 <Component/>
.
的组件
在这个组件中我使用了几个 useEffect
钩子,所以我的问题是,将 useEffect
钩子放在组件文件中是一个好的做法吗?如果没有,如果您需要在组件内有一个 useEffect
挂钩。你会如何做到这一点?
是的,您的设置很好。这就是hooks的美妙之处,就是你可以在任何函数组件中使用它们,想用多少就用多少!
在您的应用程序的任何组件中使用 useEffect
钩子都没有错。
我假设您指的是使用 useState
和 useEffect
挂钩会导致您的组件无限渲染的问题。当您更新 useEffect
挂钩内的状态时会发生这种情况,并且该挂钩具有
- 没有依赖关系,或者
- 取决于您刚刚更新的状态
为避免这种情况,只需确保您的效果不依赖于您正在更新的状态。
我有我的主要 <App/>
并且在我的应用程序中我使用了多个 useState
挂钩。
在我的应用程序中,我还使用了一个名为 <Component/>
.
在这个组件中我使用了几个 useEffect
钩子,所以我的问题是,将 useEffect
钩子放在组件文件中是一个好的做法吗?如果没有,如果您需要在组件内有一个 useEffect
挂钩。你会如何做到这一点?
是的,您的设置很好。这就是hooks的美妙之处,就是你可以在任何函数组件中使用它们,想用多少就用多少!
在您的应用程序的任何组件中使用 useEffect
钩子都没有错。
我假设您指的是使用 useState
和 useEffect
挂钩会导致您的组件无限渲染的问题。当您更新 useEffect
挂钩内的状态时会发生这种情况,并且该挂钩具有
- 没有依赖关系,或者
- 取决于您刚刚更新的状态
为避免这种情况,只需确保您的效果不依赖于您正在更新的状态。