在组件之间共享数据

时间:2018-04-20 13:27:17

标签: angular rxjs

如果我需要在组件之间共享数据,例如我可以使用名为y_score的字段注入average_precision_score,则绑定到每个组件上的所述字段的输入:dataService。这是有效的,如果我输入组件1输入,数据会在我输入时显示在组件2的输入中。我的问题是为什么我需要让width Observable并在任何地方订阅它?它似乎是在不进行更新[(ngModel)]="dataService.width"的情况下进行更新。

width不熟悉我必须遗漏一些东西。

1 个答案:

答案 0 :(得分:2)

如果您的示例与显示值或将其绑定到输入一样简单,您可以坚持使用不可观察的解决方案。

但现实世界的情况要复杂得多。假设您的服务中的值发生了变化,您需要:

  • 调用组件中的方法
  • 委托服务中的方法
  • 发出@Output事件
  • 发出http请求

这些是observables可以真正帮助你的情况。

与往常一样,这是为工作选择合适的工具。有时简单的数据绑定就足够了。其他时候,您必须达到可观察的解决方案。