在我的应用程序中,我使用了组件递归。当我递归调用组件时,递归组件上的状态变得未定义,因为不知何故 connect 不适用于递归组件。
调用自身的组件有状态但递归组件没有状态
我尝试了一种解决方案,即当组件调用它自己时,它会将所有状态作为道具传递给它,而不是从 connect 获取
但我想知道为什么 connect 对递归组件不起作用
我必须尝试在 codeandbox 上重新创建一个场景,这里是 link
谢谢
答案 0 :(得分:1)
您正在重用 Base 组件,而不是 connected
组件。
插入
export default connect(mapStateToProps, mapDispatchToProps)(Child);
你可以使用
const ConnectedChild = connect(mapStateToProps, mapDispatchToProps)(Child);
export default ConnectedChild;
并使用 ConnectedChild
中的 Child
进行递归。
在 https://codesandbox.io/s/react-redux-saga-example-forked-cz71t?file=/src/child.js 处更新了演示