我正在开发Angular(7.2.x版)Web应用程序,因为我有多个组件,并且每个组件都与一条路线相关联。
组件#1:ProcessDataComponent
在此组件中,我正在对服务器进行HTTP调用。此调用将花费大约一分钟的时间,并且将以OctetStream
(即ArrayBuffer
)的形式返回结果文件作为HTTP响应。
组件#2:FeedbackComponent
将数据发送到服务器的简单表格(反馈)
如果我正在ProcessDataComponent
中进行HTTP调用(即,通过Button Click事件触发HTTP调用),则立即导航至“反馈”。我无法获取处理后的结果数据。因为所述组件被破坏并加载组件FeedbackComponent
我需要在ProcessDataComponent
中触发HTTP调用,并且这将在后台执行HTTP调用,而与路由无关。请帮助我如何实现这一目标。
答案 0 :(得分:0)
您可以在ProcessDataComponent
(拥有整个应用程序的那个)内部进行通话,而不必在AppComponent
内部进行通话。该组件寿命很长,不会在导航中被破坏。侦听按钮单击(触发请求)的方法可能应该通过服务。
这里是快速demo on StackBlitz。