在Redux Observable中,是否只在初始操作完成时调用映射到操作
在下面的代码中,“设置颜色范围”操作更新Redux中的一个值,该值是“获取颜色”的有效载荷。因此,我希望在Redux中的值更新后调用FETCH_colors操作 使用mapTo运算符,FETCH_COLOURS操作是否仅在SET_COLOURE_RANGE完成后调用,还是在NOTINCE完成后立即调用在Redux Observable中,是否只在初始操作完成时调用映射到操作,redux,rxjs,redux-observable,Redux,Rxjs,Redux Observable,在下面的代码中,“设置颜色范围”操作更新Redux中的一个值,该值是“获取颜色”的有效载荷。因此,我希望在Redux中的值更新后调用FETCH_colors操作 使用mapTo运算符,FETCH_COLOURS操作是否仅在SET_COLOURE_RANGE完成后调用,还是在NOTINCE完成后立即调用 import { selectColoursRange } from 'app/selectors/colours'; export const setColourRangeEpic = act
import { selectColoursRange } from 'app/selectors/colours';
export const setColourRangeEpic = action$ =>
action$.pipe(ofType('SET_COLOUR_RANGE'), mapTo({ type: 'FETCH_COLOURS' }));
export const fetchColoursEpic = (action$, store) =>
action$
.ofType('FETCH_COLOURS')
.mergeMap(() =>
fromPromise(
axios.post(`/colour`, selectColoursRange(store.getState()))
)
.map(response => ({
type: 'FETCH_COLOURS_SUCCESS',
data: response.data
}))
.catch(error =>
Observable.of({
type: 'FETCH_COLOURS_ERROR',
error
})
)
);
减速器总是在epic获得动作之前获得动作
因此,SET_color_RANGE进入reducer(从而更新状态),然后进入setcolorrangeepic并映射到FETCH_colors操作。此FETCH_COLORS操作将转到减速机,然后转到FETCH COLOURSEPIC。当您调用SelectColorsRange(store.getState())时,状态已经更新。这非常令人困惑。动作本身只是一个未完成的对象<代码>操作$也无法完成,因为这意味着此Redux存储中将不再有操作。所以很难说你想做什么…谢谢你的回复。我编辑了开场白。更清楚了吗?