【发布时间】:2017-08-02 21:11:51
【问题描述】:
我正在尝试将以下 @ngrx 效果转换为 redux-observable 史诗:
@Effect()
startReading$ =
this.actions$.ofType('START_READING').switchMap(() => {
return Observable.interval(200)
.takeUntil(
this.actions$.ofType('ABORT_PAGE_PROCESSING))
.mapTo({ type: 'PROCESS_PAGE' });
});
我的尝试是:
export const startReadingEpic = action$ =>
action$
.ofType('START_READING')
.switchMap(() =>
Observable.interval(200)
.takeUntil(action$.ofType('ABORT_PAGE_PROCESSING'))
.mapTo({ type: 'PROCESS_PAGE' })
);
这似乎不起作用。返回单个 Observable.of({ type: 'PROCESS_PAGE' }) 工作正常。
我是否错过了由 @ngrx 开箱即用处理的 redux-observable 所需的任何内容?
谢谢。
【问题讨论】:
-
代码看起来正确。究竟是什么行不通?你能记录下这些动作吗?
-
我正在记录通过我的应用程序的所有操作。使用 Observable.interval 版本时,史诗中没有发送任何内容。它使用 Observable.of({ type: 'PROCESS_PAGE' }) 发送出去
-
只是为了确保:控制台中是否有任何错误?你能确认所有需要的 rx 操作符都被导入了吗?
-
同意。代码看起来不错。这只是普通的 Rx,与 redux-observable 或 ngrx 无关 :)
标签: rxjs redux-observable