gpt4 book ai didi

javascript - 为什么需要在 RxJs 中导入运算符?

转载 作者:行者123 更新时间:2023-12-01 03:13:20 24 4
gpt4 key购买 nike

在学习 Angular 教程时,我发现了这一点:

import 'rxjs/add/operator/switchMap';

export class HeroDetailComponent implements OnInit {
ngOnInit(): void {
this.route.paramMap
.switchMap((params: ParamMap) => this.heroService.getHero(+params.get('id')))
.subscribe(hero => this.hero = hero);
}
}

抱歉,如果我发现这有点奇怪(由于两个原因:我来自 Java 并且我并没有真正遵循最新的 JS 技术)。不是 switchMap param map 拥有的方法其中Observable<ParamMap> ?当我删除 import 语句时,代码无法编译。

我使用 RxJava,但是操作 observable 所需的所有方法都已经存在(附加)在 Observable 类本身中。

有人可以告诉我为什么switchMap需要导入吗?可能的话,给我一些引用链接。

最佳答案

您可以阅读这篇文章:Where are my Observable operators

很多运算符(operator)都失踪了。但这不是一个错误,这是设计使然。 Angular 不会提供所有可用的运算符。这将导致额外的 300 kb。因此,要获得具有更多运算符的 Observable,您可以导入所需的运算符,也可以导入全部运算符。

当你构建 Web 应用程序时,你应该使用更少的 http 请求,为了获得更好的性能,您应该压缩文件大小。

关于javascript - 为什么需要在 RxJs 中导入运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45708826/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com