我一直在学习Redux,我不清楚的一个部分是,我如何在使用react state和Redux store之间做出决定,然后分配操作.从我目前的阅读来看,似乎我可以使用React state来代替Redux store,并且仍然可以完成任务.我理解使用Redux store和仅使用一个容器组件以及其余的无状态组件的区别,但我不太清楚如何确定何时使用React state Vs Redux store.有人能帮忙吗?

谢谢

推荐答案

如果该状态不需要与其他组件共享,或者在卸载组件时不需要保留该状态,那么您可以将其置于组件的状态.

你可以认为Reduxstore 是前端的数据库,如果你有从API获取的产品数据之类的东西,那么Reduxstore 就是正确的地方;如果你有一个下拉组件,它需要一个isOpenprops ,那么这个下拉组件的父组件可以保持dropdownIsOpen作为组件状态.

更多信息,这里是丹的答案:https://github.com/reactjs/redux/issues/1287

你还说

只有一个容器组件,其余部分作为无状态组件

这是不正确的.可以有几个容器组件.容器组件还可以包含另一个容器组件.

Reactjs相关问答推荐

使用React Router多姆表单组件附加/?地址栏中基本URL的索引

react-native-markdown-显示样式表

InfiniteScroll持续获取数据,直到超过最大更新深度

从`redux—thunk`导入thunk `在stackblitz中不起作用

在Redux工具包查询中,是否可以将标记应用到API切片内的所有端点?

try 在Dockerfile中使用AWS CLI将React构建工件上传到S3时出错

有没有一种惯用的方式来接受特定的子元素?

每次单击按钮时,Reaction组件都会重新生成

useState导致对函数的无休止调用

有没有办法在 React Router v6 中的路由匹配上运行一些逻辑/功能?

如何在不同的路由中渲染相同的页面组件(包括 getServerSideProps)

在MongoDB中,如何获取最后N条记录中字段不为空或不为空字符串的数据

如何在next.js 13中仅在主页导航栏上隐藏组件?

使用 React Router v6 监听来自不同组件的组件状态变化

未捕获的类型错误:useSelector 不是函数

页面加载时不显示数组中的数据

谁能根据经验提供有关 useEffect 挂钩的更多信息

react-admin useGetIdentity 只返回全名,id 未定义 头像未定义

哪个 PrivateRouter 实现更好:高阶组件还是替换?

你如何使用 refs 访问 React 中映射子项的值?