Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单个组件中的多个redux存储_Javascript_Reactjs_Redux - Fatal编程技术网

Javascript 单个组件中的多个redux存储

Javascript 单个组件中的多个redux存储,javascript,reactjs,redux,Javascript,Reactjs,Redux,我已经进入react项目,该项目使用多个redux商店 有很多种界面:选项卡、上下文、弹出窗口和其他。这个项目的架构师决定拆分这个商店以使这个项目更快。我不能改变架构,必须按照它的方式工作 有时我会遇到这样的情况,组件需要分包到3个存储区。这是可怕的痛苦,因为第一个来自提供者,第二个来自道具组件 const{someProps}=this.props; 返回( 您可以创建某种Facade或Proxy,基本上是HOC,它将封装所有更改,并响应道具、商店或其他地方的更改 我认为您可以使它类似于Re

我已经进入react项目,该项目使用多个redux商店


有很多种界面:选项卡、上下文、弹出窗口和其他。这个项目的架构师决定拆分这个商店以使这个项目更快。我不能改变架构,必须按照它的方式工作

有时我会遇到这样的情况,组件需要分包到3个存储区。这是可怕的痛苦,因为第一个来自提供者,第二个来自道具组件

const{someProps}=this.props;
返回(

您可以创建某种Facade或Proxy,基本上是HOC,它将封装所有更改,并响应道具、商店或其他地方的更改

我认为您可以使它类似于Redux store,其中主对象具有表示不同数据源/状态的属性,这些属性由不同的还原器创建

组件中
可以使用

  • 道具改变
  • 提供程序提供的状态更新
  • 对反应性数据源更改作出反应

  • 如果您在某个隔离区域工作-您可以使用此HOC包装它,并将所有数据源合并的所有数据作为道具传递,例如,称为
    存储

    为什么需要3个不同的存储?redux希望使用的一个存储、多文件缩减器有什么问题?您是否有任何性能问题或需要此类隔离?请参阅要了解更多信息,请提供更多与此问题相关的背景资料。有很多种界面:选项卡、上下文、弹出窗口和其他。此项目的Architector决定将此存储拆分为不同的部分,以使此项目更快捷。因此,我必须创建带有to参数的HOC(wrappedComponents、nameOfStore),它可以访问所有存储。还有这个.state=nameOfStore.getState();nameOfStore.subscribe(()=>this.setState(nameOfStore.getState());返回组件,然后用多个HOC存储多次包装组件?据我所知-是的,因为您需要将其插入数据源