Angular : 防止 api 错误不显示 HTML 模板

Angular : prevent api error to not display HTML template

当我执行 HTTP 请求时,例如 GET 请求,并且我收到无效给定数据的状态代码 400,它会阻止我的 HTML 模板显示在我的 [=20= 视图中] 应用程序。 我现在是这样处理的:

this.myService.getData(neededData)
  .subscribe(
    (result) => {
      this.data = result;
    },
    (error) => { 
      if (error) { 
        console.log("error"); 
        this.anErrorHasOccured = true; 
      }
    }
  );

'error' 在控制台中显示良好,但此错误导致我的模板无法显示,我该如何解决?

你能试试这个吗:

this.myService.getData(neededData)
  .pipe(catchError(err => {
    console.err(err);
    return of([]);
  }))
  .subscribe(
    (result) => this.data = result,
  );