Reactjs 从Redux Saga函数更新另一个Redux存储的最佳方法

Reactjs 从Redux Saga函数更新另一个Redux存储的最佳方法,reactjs,react-redux,redux-saga,Reactjs,React Redux,Redux Saga,我有一个React/Redux应用程序,我选择将Redux状态组织为两个主要部分:广告和任务,并使用CombineReducer 首先创建广告。单个广告或广告集合可以分组并分配给新任务 在我的ads商店中,我有还原器和saga函数,可以进行与ads相关的api调用,并更新ads的Redux状态 在我的任务存储区中,我有还原器和saga函数,它们可以进行与任务相关的api调用,并更新任务的Redux状态 当从广告集合创建任务时,我需要更新广告Redux状态。最初我只是分派我的ads action

我有一个React/Redux应用程序,我选择将Redux状态组织为两个主要部分:广告和任务,并使用CombineReducer

首先创建广告。单个广告或广告集合可以分组并分配给新任务

在我的ads商店中,我有还原器和saga函数,可以进行与ads相关的api调用,并更新ads的Redux状态

在我的任务存储区中,我有还原器和saga函数,它们可以进行与任务相关的api调用,并更新任务的Redux状态

当从广告集合创建任务时,我需要更新广告Redux状态。最初我只是分派我的ads action creator,它进行api调用并检索所有广告的更新列表。不幸的是,api调用是一个非常复杂的查询,因此相当耗时

当我调用api来创建任务时,我得到了一些数据,我可以使用这些数据来更新ads Redux状态,从而避免进行缓慢的api调用

因为多个广告可以用来创建一个任务,所以我的广告id存储在一个数组中

我正试图找出如何循环通过该数组,并在ads Redux存储中调度一个减速机,以使用该数据更新状态

我遇到的一个问题是一个错误,指出无法从我用来迭代ad id数组的forEach循环内部调用yield

另一个问题是找到从一个Redux存储更新另一个Redux存储状态的最佳方法

我想我可以把所有东西都合并到一个Redux存储中,但是这个文件会无限长


不确定该往哪个方向走。

使这一点变得困难的真正问题是如何使用放入循环中的收益率

这最终奏效了:

yield myArray.map((item: string) => 
    put(OtherReduxStoreActions.myActionCreatorFunction(item))
);