angular6 - 将数据从一个组件发送到另一个组件

angular6 - Send data from one component to another

你基本上有可能的方法:

亲子交流

您可以借助 @Input 注释获得此功能。所以父组件持有数据对象并将其传递给子组件。然后您可以使用OnChanges界面管理数据更新。

如果您想强调组件之间的父子关系,您可能更喜欢这种方法。通过这种方式,您强制您的子组件位于另一个管理原始数据的组件内。 通过这种方式,数据在父级被销毁时被销毁。

共享服务

您所描述的这种方法基于一种共享服务,该服务保存数据并将其提供给订阅者。因此服务管理和保存数据,并且可能无限数量的组件可以访问该数据。

此方法适用于 Observer Pattern,因此您的组件必须观察数据更新。

通过这种方式,当服务被销毁时,数据也被销毁,或者更好的是,当所有保存服务实例的组件被销毁时。

--

看着你的图表,你应该为我做的是:

  • CreateComponent 请求服务创建工单
  • 服务创建工单并将新的工单数据发送回 CreateComponent
  • Che CreateComponent 读取新获得的数据,如果创建成功则请求到 TicketDetail 的路由导航。否则你可以管理最终的错误

如果您直接从服务转到详细信息,则无法正确管理创建结果,因为在服务中您没有与用户交互的视图。也许你可以找到一些方法来做到这一点,但我认为这可能有点困难