如何从redux循环合并器访问全局状态?
我使用的是react循环,我尝试使用它的CombineReducer,但将其扩展为作为第三个参数传递全局状态,基本上实现了一个类似于 Combine Reducer基本上调用ChildReducer,我们可以在其代码中找到这一点如何从redux循环合并器访问全局状态?,redux,redux-loop,Redux,Redux Loop,我使用的是react循环,我尝试使用它的CombineReducer,但将其扩展为作为第三个参数传递全局状态,基本上实现了一个类似于 Combine Reducer基本上调用ChildReducer,我们可以在其代码中找到这一点 let currentChild = childReducer(prev[key], action, ...args); 其思想是将第三个参数so、action、plainState、…args传递到那里,以便减速器将其作为参数接收。问题是如何生成该plainStat
let currentChild = childReducer(prev[key], action, ...args);
其思想是将第三个参数so
、action、plainState、…args传递到那里,以便减速器将其作为参数接收。问题是如何生成该plainState,因为rootState基本上是形式([state,Cmd])的数组的组合,所以我只需要plain state,而不需要redux循环处理程序变量。您必须编写自己版本的combinereducer。在最简单的情况下,所提供的一个不会起作用。但是,您可以根据提供的一个进行调整。我想你可以像你提到的库一样实现它
如果您正在寻找一种将其他状态值注入到reducer中的方法,请查看我在redux循环中使用了几年的中间件
免责声明:我维护redux循环和redux操作增强器。据我所知,类似于let currentChild=childReducer(prev[key],action,…args)的编辑代码>->让currentChild=childReducer(prev[key],action,rootState,…args)代码>应该足够了。但在这种情况下,不会清除循环对象的状态。我错了吗?不,你没有错。查看内置版本以了解如何分离状态和CMD并聚合它们。您需要编写类似于组合器的东西,将全局状态传递给其子级。