- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在我的网站中创建搜索引擎。我想使用 switchMap 取消之前的请求,因为这个函数运行异步。
我通过 keyup 从输入中获取数据,例如:
<input type="text" (keyup)="subject.next($event.target.value)">
typescript
subject = new Subject<string>();
ngOnInit() {
this.subject.asObservable().pipe(debounceTime(500)).subscribe(res => {
console.log(res);
});
}
我想在这里使用 switchMap 和计时器,但是什么不会改变,它总是不起作用,有人知道如何重构此代码以与 RxJs 中的 switchMap 和计时器一起使用吗?
我在 stackblitz 中的示例:
https://stackblitz.com/edit/angular-playground-53grij?file=app%2Fapp.component.ts
最佳答案
你可以尝试这样的事情(假设你使用的是 RxJS 6):
subject = new Subject<string>();
subscription: Subscription;
ngOnInit() {
this.subscription = this.subject
.pipe(
debounceTime(500),
switchMap((query: string) => {
return this.http.get('http://url?q=' + query);
})
)
.subscribe((res: any) => {
console.log(res);
});
}
ngOnDestroy() {
this.subscription.unsubscribe();
}
关于javascript - RxJ 和 switchMap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51860416/
我不知道如何解决以下问题。 有一个对象类型: Box { Fruit[n]: { Kinds[n]: { id: string; name: st
简单问题:出现错误时 .do() 会触发吗?文档说:“对源 Observable 上的每次发射执行副作用,但返回与源相同的 Observable。”错误也被视为排放吗? return this.aut
DRY(不要重复自己) 假设我在我的应用程序中经常使用此代码: observable$.pipe( tap(value => console.log(value)), map(value =>
我想在我的网站中创建搜索引擎。我想使用 switchMap 取消之前的请求,因为这个函数运行异步。 我通过 keyup 从输入中获取数据,例如: typescript subject = new S
我正在尝试使用 RxJS 捕获用户击键,并为每个击键生成一个结果对象,其中包含键、击键的持续时间(时间keyup 和 keydown 事件之间),以及先前笔划之间的间隔(使用 timeInterval
您以前见过这个问题,但我想了解这个问题在 RxJs 中的流程。 array1 = ["cat", "dog", "taco"] array2 = ["cat", "dog", "fish"] 过滤ar
我有以下属性 private messages$: BehaviorSubject>; public readonly messages: Observable>; 我正在通过 this.me
我只是想使用map函数,但它抛出一个错误。在results.map(results =>等)里面,它说“符号映射无法正确解析,可能它位于无法访问的模块中” , import { Component,
在RxJava中,有Observable.OnSubscribe当有东西订阅可观察对象时,它将调用您的操作。 RxJs 中有等效的吗? 自从提出这个问题以来,他们似乎已经删除了该页面。 Google的
我无法理解使用 Lodash 可以轻松完成的事情。我需要 groupBy 和 sum,类似这样,仅使用 RxJs: let arr = [ {n: 'a', q: 1 },
我的应用程序中有 2 项服务。一个通过网络加载 youTube 评论线程和评论的 youTube 服务,以及一个管理批量评论加载的评论服务。评论服务特定于我的应用,youTube 服务与应用无关。 我
我想使用 RxJs (5.0.0-Beta.6) 和 TypeScript (1.8.10) 创建一个 JS 库>. 我的简单 TypeScript 文件正在编译。我有这个文件: MyLib.ts:
我正在编写一个需要很长时间运行的进程,并且我正在寻求优化已用内存 我有一个随着时间推移而来的数据流,我想要一种方法来在流完成时清理这些数据和声明的变量。有什么想法吗? 我已经设置了一个问题的快速示例:
我是一名优秀的程序员,十分优秀!