我即将开始一个使用 React-Redux 的项目。对于 API 引用,有 Hooks 和 connect()。因为,Hook 是连接 API 的替代品。使用钩子(Hook)或连接到我的 React-Redux 项目有什么区别。
最佳答案
What is the difference between using hooks and
connect
to my React-Redux project
有两个主要区别:
范围
connect
可以与 React 类组件和函数组件一起使用,而钩子(Hook)只能与函数组件一起使用。性能与简单性
使用钩子(Hook)更简单。简单性是有代价的:与connect
相比,您可以进行的性能调整更少。哪个更复杂:您将其称为传递配置选项(很少或很多)并返回connect
的“配置风格”。这种风格是 HOC,您可以通过传递组件来将其重新包装起来。
主要配置选项之一是已经提到的mapStateToProps函数。您不必使用它,但大多数情况下您会使用它。还有 4 个其他函数的存在只是为了给您提供各种机会来提高您将使用connect
封装的组件的性能。这些函数称为:
areStatesEqual
areStatePropsEqual
areOwnPropsEqual
areMergedPropsEqual
所有 4 个都是可选的。您可以将其作为connect
配置选项传入,无论是无配置选项还是部分或全部配置选项,并调整性能。值得注意的是,即使您不传入任何函数,这些函数的默认实现(实际上是性能助手)也会应用,因此,您将获得比其钩子(Hook)在性能方面更优化的包装组件对应。
关于reactjs - 使用 React-Redux Hooks 和 React-Redux Connect() 之间的主要区别是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58027300/