首页 > 解决方案 > ReactJS 我用redux的时候正常吗 我所有的组件都是类组件

问题描述

在我学习 react 的时候,老师总是提醒我要尽可能多地使用函数式组件,尽量避免使用类组件,少用类组件。是的,那时候很容易。

现在我正在使用 Redux,我几乎不能使用函数式组件,因为connect()从 react-redux 导入的只能与类组件一起使用,因此我的应用程序的每个组件都是类组件。这是正常的吗?由于现在挂钩 API(使用功能组件)越来越受欢迎。

标签: javascriptreactjsreduxreact-reduxcomponents

解决方案


嗯,有两件事:

首先,可能是connect一个功能组件

其次,您不应该将每个组件都连接到 Redux。实际上,连接到 Redux 的组件越少越好。理想情况下,对于一组组件,您有一个“容器”组件,它连接到存储(并且包含其中的所有其他相关状态和逻辑),然后它将这些东西传递给功能/类组件子组件(更侧重于演示)。然后你可以在整个应用程序中拥有一些这样的容器,其余的组件只是传统的 React 组件。

如果您将所有内容直接连接到商店,则可能会导致诸如组件可重用性降低、性能不佳或鼓励不良组件布局/层次结构等问题。


推荐阅读