有没有办法运行一个内部的可观测值,比如switchMap
,concatMap
,等等,但是不改变外部的可观测值?我在这里看到的是switchMap中的内部可观测值将string
转换成boolean
,然后沿着管道传递结果。我如何让它只传递传入的内容,然后再传递出去?
fsExists = false;
projectExists = false;
private doChecks = new BehaviorSubject<string>('');
doChecks$ = this.doChecks.pipe(
debounceTime(100),
tap(i => (this.projectExists = this.projects.exists(i))),
// Converts the outer `i` to a boolean here:
switchMap(i => this.fs.exists(path.join(i, environment.manifest)).pipe(tap(i => (this.fsExists = i)))),
tap(i => /* `i` should be a string here. But it is a boolean. */)
);
1条答案
按热度按时间8cdiaqws1#
只需添加一个
map
来返回原始参数,您可能希望对变量进行不同的命名,以减少混淆。