我有一个Angular应用程序(9),并且具有多个组件,这些组件要求对其余部分进行计算操作,并在不同的编辑器中显示结果。现在,在发出请求之前,我会调用一个加载面板,并在完成请求之后将加载面板隐藏在finalize回调中。像这样的东西:
this.isloading = false;
httpclient.get('http://localhost/calculate').pipe(finalize(() =>this.isloading=false).subscribe(v=>{
//make some operations with the data and set editor values
});
现在在设置所有编辑器值之前先加载面板分配器。如果请求完成,则直接调用finalize回调,但是如果订阅或错误中的代码完成,则如何调用类似finalize的东西?
在subscribe
块的末尾调用它吗?看起来您的finalize
在需要的每个“位置”中都在使用(服务中未抽象),因此您最好将this.isLoading = false;
用作subscribe
或error
的最后一条语句块