用Observable <string>过滤Observable <any []>

罗尼·哈科恩

使用Angular 7,我有一个搜索输入,该输入连接到 Observable<string>

searchValue = new FormControl("");
this.searchChanges$ = searchValue.valueChanges

我有另一个Observable<Record[]>从firebase获得的信息,我正在尝试使用从搜索输入中获得的字符串过滤数组:

return this.searchChanges$.pipe(
  withLatestFrom(recordsObserver, (searchValue, records) => {
    return records.filter(record => record.title.includes(searchValue));
  })
);

问题在于,直到输入内容发生更改,列表才会更新,什么是解决此问题的最佳方法?

帕特里克·凯勒特

当两个观测是为了工作作为新观察到的一个主要来源,你应该宁愿使用combineLatest超过withLatestFrom这样,当您的源可观测对象之一触发时,您的新组合可观测对象也将触发。

在这种用例中,另一个方便的工具是利用startWith

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

用其他Observable过滤RxJava Observable

Angular HttpClient返回期望observable <HttpEvent <any>而不是observable <any>

根据if条件过滤Observable数组

RxJS将Observable <string []>转换为Observable <string>

无法将类型Observable <Observable <any [] >>分配给类型Observable <any []>

类型'MonoTypeOperatorFunction <any>'的参数不能分配给类型'UnaryFunction <Observable <any>,Observable <any >>'的参数

如何过滤Observable onKeyUp?

类型“ Observable <any []>”中缺少属性“ map”

将Observable <String []>转换为Observable <DataType []>

角度观众模拟Observable <string>

ngIf指令中的Observable <string []>

用什么代替Observable()的Observable

在HTML中显示Observable <any []>返回类型

如何创建一个 Observable<any[]>?

使用 Rxjs 过滤 Observable

如何将 Observable<Observable<any>> 展平为 Observable<any>?

如何在角度 6 中将 any[] 转换为 observable<any[]>

rxjs 根据来自不同 observable 的值加入和过滤 observable

rxjs6 过滤器 Observable<Array<any>>

输入 'Observable<any[] | Observable<any[]>>' 不可分配给类型 'Observable<any[]>'

过滤 observable 直到映射的 observable 完成

输入 '(token: string) => Observable<{ headers: HttpHe aders; }>' 不可分配给类型 'Observable<any>'

Observables 过滤 observable 并映射到不同的 Observable 对象:Angular 9

将 Promise<Observable<HttpEvent<any>>> 压缩为 Observable<HttpEvent<any>>

observable 的过滤结果

Rxjs 错误类型 'Observable<HttpEvent<any>>'

在 Observable 中調用 Promise

Angular 將 Observable<any> 實現為同步 string[] 數組

將 {number, Observable<string>} 轉換為 Observable<number, string>