如何处理';项目';CombineTest的参数(在6.5版本的rxjs中)

如何处理';项目';CombineTest的参数(在6.5版本的rxjs中),rxjs,Rxjs,在RXJS 6.5中,不推荐使用以下代码中CombineTest的签名: import { combineLatest, interval } from 'rxjs'; import { map, take } from 'rxjs/operators'; const a$ = interval().pipe( take(3), map( x => `a: ${x}`) ); const b$ = interval().pipe( take(3), map( x =>

在RXJS 6.5中,不推荐使用以下代码中CombineTest的签名:

import { combineLatest, interval } from 'rxjs';
import { map, take } from 'rxjs/operators';

const a$ = interval().pipe(
  take(3),
  map( x => `a: ${x}`)
);
const b$ = interval().pipe(
  take(3),
  map( x => x + 10 ),
  map( x => `b: ${x}`)
);
combineLatest(a$, b$, (a, b) => `${a} / ${b}`)
  .subscribe(x => console.log(x));
输出为:

a: 0 / b: 10
a: 1 / b: 10
a: 1 / b: 11
a: 2 / b: 11
a: 2 / b: 12
这里的问题是调度程序。“弃用”消息并不能真正帮助我:

//使用计划程序(已弃用)/***已弃用通过计划程序 此处已弃用,请使用{@link subscribeOn}和/或{@link observeOn} 反而*/


如何使此代码与RXJS 6.5兼容

感谢@cartant的评论,我现在可以回答我自己的问题了:

combineLatest([a$, b$])
  .pipe(map( x => ((a, b) => `${a} / ${b}`)(...x)))
  .subscribe(x => console.log(x));

我在传递变量时也会遇到同样的错误。你可以忽略管道

{
常量值:Observable[]=Object.values(订阅$);
返回组合测试(值)。管道(
映射((可变值)=>{
让newInput=input;
variableValue.forEach((variableValue,i)=>{
常数键=键[i];
常量值=variableValue.find(v=>v!==未定义);
const regex=new RegExp(`this.escapeRegExp(key)}`,'g');
newInput=newInput.replace(regex,value);
});
返回新的输入;
})
);
}
弃用消息:

(alias) combineLatest<string[][]>(...observables: (Subscribable<never> | Subscribable<any> | PromiseLike<any> | InteropObservable<any> | ArrayLike<any> | Iterable<...> | SchedulerLike | ((...values: any[]) => string[][]))[]): Observable<...> (+38 overloads)
import combineLatest
@deprecated — Passing a scheduler here is deprecated, use {@link subscribeOn} and/or {@link observeOn} instead

'(...observables: (SchedulerLike | Subscribable<never> | Subscribable<any> | PromiseLike<any> | InteropObservable<any> | ArrayLike<...> | Iterable<...> | ((...values: any[]) => string[][]))[]): Observable<...>' is deprecatedts(6385)
(别名)CombineTest(…Observable:(Subscribable | Subscribable | PromiseLike | InteropoObservable | ArrayLike | Iterable | SchedulerLike |)((…值:any[])=>字符串[]])[]:Observable(+38重载)
进口组合测试
@已弃用-在此处传递计划程序已弃用,请改用{@link subscribeOn}和/或{@link observeOn}
“(…可观测的:(SchedulerLike | Subscribable | Subscribable | PromiseLike | interopobbservable | ArrayLike | Iterable |)(…值:any[])=>字符串[]])[]:可观测的”是不推荐的(6385)

@cartant谢谢,我还没有看过这个文档部分。这很有用,我不知道这里的弃用信息是否有用。是的,我知道: