【问题标题】:ForkJoin or Angular ResolveForkJoin 或 Angular Resolve
【发布时间】:2022-12-14 11:45:31
【问题描述】:

我试图了解这两种获取数据的方式之间的区别,以及我应该在我的 Angular 组件上实现哪种方式。

设想:

我有一个 Angular 表单,它依赖于在呈现页面之前加载的数据。这将包括选择字段的下拉数据。这将需要对不同服务的多个 API 调用才能完成。 API 之间没有依赖关系,因此它们可以是异步的。

解决方案一:使用 Angular resolve https://angular.io/api/router/Resolve

我们过去曾用它来处理 API 调用。但仅适用于 1 个呼叫而不是多个。可以正常工作,但需要在模块中进行一些接线。

解决方案 2:使用 RXJS ForkJoin

这似乎是最容易实现的。它似乎以集合的形式监听多个 API 调用。

不同的实现实现相似的结果。哪一个是最好的解决方案,为什么?我试过谷歌搜索并四处询问但没有运气。

谢谢...

【问题讨论】:

    标签: angular


    【解决方案1】:

    选择第二个选项,因为在解析器完成所有调用之前屏幕将保持空白,这对用户体验不利,而且 forkJoin 将相对快速完成,因为所有调用将并行进行。

    您可以选择在 forkJoin 完成之前在表单上显示一个微调器,但是当使用解析器时,您没有这个选项!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-24
      • 2020-10-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-08
      相关资源
      最近更新 更多