CombineReducers 和 react-redux 中的良好结构

CombineReducers and good structure in react-redux

我将日历作为应用程序的一部分,并尝试使其可以重复使用。

然后我也用日历做了另一部分

所以我使用了 combineReducers 函数。

import calendar from '../../common/calendar/Reducer';
import insatester from './Reducer';

const reducerCombiner = combineReducers({
    calendar,
    insatester
});
export default reducerCombiner

然后,我用组合reducer做了一个store

首先似乎工作正常。 但是存储和数据是分开的。
例子)
store.calendar.data1 <- 来自日历
store.insatester.data2 <- 来自 insatester

然后我尝试从 insatester 获取日历事件数据库数据,因为我认为可重复使用的日历不会这样做。 但问题是使用日历应用程序中存储的数据库数据也需要访问 store.insatester,这没有意义。

问题1。我怎样才能组合减速器使商店具有相同的水平?
例子)
store.data1 <- 来自日历
store.data2 <- 来自 insatester

问题2。我的结构有问题吗?我该如何更改它?

您需要编写一个可以访问完整状态的减速器。如您所见,combineReducers 将您限制在状态的单个切片中。您可以将您的自定义 reducer 放在前面来处理需要来自两个切片的数据的操作,然后让其余部分落入 combineReducers 部分。

Redux 文档的这一页解释了:http://redux.js.org/docs/recipes/reducers/BeyondCombineReducers.html#sharing-data-between-slice-reducers