javascript – 为什么我们应该使用()函数的RxJs?

前端之家收集整理的这篇文章主要介绍了javascript – 为什么我们应该使用()函数的RxJs?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在角度为2的angular.io教程的服务部分,我点击了一个名为of.for的方法,例如:
getHeroes(): Observable<Hero[]> {
  return of(HEROES);
}

或在下面的样本:

getHero(id: number): Observable<Hero> {
  // Todo: send the message _after_ fetching the hero
  this.messageService.add(`HeroService: fetched hero id=${id}`);
  return of(HEROES.find(hero => hero.id === id));
}

在angular.io刚刚解释

used RxJS of() to return an Observable of mock heroes
(Observable).

并没有解释为什么我们应该使用功能,它究竟做了什么,它有什么好处?

解决方法

他们使用()的原因是因为它很容易使用它而不是真正的HTTP调用.

在实际应用程序中,您将实现这样的getHeroes(),例如:

getHeroes(): Observable<Hero[]> {
  return this.http.get(`/heroes`);
}

但是,由于您只想使用模拟响应而不创建任何真正的后端,您可以使用()返回虚假响应:

const HEROES = [{...},{...}];

getHeroes(): Observable<Hero[]> {
  return of(HEROES);
}

你的应用程序的其余部分将工作相同,因为()是一个Observable,你可以稍后订阅链接运算符,就像你使用this.http.get(…).

()的唯一作用是它在订阅时立即将其参数作为单个排放发出,然后发送完整的通知.

原文链接:https://www.f2er.com/js/156406.html

猜你在找的JavaScript相关文章