我有一个epic与concat操作符很好地工作。Webstorm开始说,在我使用它的方式中,它是不适用的。说
废弃的导出函数 concat<{type: string}[]>( v1: {type: string}[], scheduler: SchedulerLike)。Observable> 使用 scheduled 和 concatAll (例如 scheduled([o1, o2, o3], scheduler).pipe( concatAll())
想不通,如何重写这段代码?
const epic = action$ => action$.pipe(
ofType(TYPE),
mergeMap(() =>
concat(
of({type: 'START'}),
ajax.getJSON('someurl').pipe(
mergeMap(serverResponse => ([
{type: 'LOADED'},
{type: 'DO_JOB', serverResponse}
]))
)
)
)
使用 concatWith。 concatWith 其实并不是一个全新的操作符。它只是用来替换目前被标记为废弃的 concat 运算符,并将在 v8 中被移除。
concatWith只接受ObservableInput类型的输入,而concat也可以接受一个调度器。
更多细节请参见 此处