【发布时间】:2022-01-01 02:42:05
【问题描述】:
我只是想知道哪个是 Angular 的最佳实践。
这是一个可观察的方法。
downloadRequest(ids: number[], url: string, inputName: string): Observable<void> {
const formData = new FormData();
formData.append(inputName, ids.join(','));
return this.http.post<void>(url, formData)
}
这是我使用的订阅方法。
this.downloadService.downloadRequest(data.blabla, url, 'blabla').subscribe(res => {
alert('HEY');
}, err => {
console.log(err);
});
在这种情况下,只有当响应状态等于 200 时,此警报才会起作用。对吗?可观察方法返回 void。所以,我无法确定响应状态。
相反,我应该使用以下情况吗?可观察方法返回任何。我可以得到响应状态。
downloadRequest(ids: number[], url: string, inputName: string): Observable<any> {
const formData = new FormData();
formData.append(inputName, ids.join(','));
return this.http.post<any>(url, formData, {observe: 'response'})
}
this.downloadService.downloadRequest(data.blabla, url, 'blabla').subscribe(res => {
if (res.status === 200) {
alert('HEY');
}
}, err => {
console.log(err);
});
【问题讨论】:
标签: angular typescript rxjs observable subscription