使用Angular 6解析时,打印的变量未定义

时间:2019-01-04 13:24:24

标签: angular

我有一个页面,该页面用于加载大对象锦标赛:

ngOnInit() {
    this.navbar.setLoading(true);
    this.tournamentService.getTournament(this.slug)
      .subscribe(tournament => {
        this.data = tournament;
        localStorage.setItem('tournament', JSON.stringify(tournament));
        this.navbar.setLoading(false);
      }, err => {
        this.navbar.setLoading(false);
      });
    this.navbar.setLoading(false);
  }

在我的HTML中,我有很多关于比赛的参考,这些参考将在无法访问数据时失败。我应该如何避免这种情况?

我已经尝试使用?运算符,但我不喜欢将其放在任何地方,并且在类似[(ngModel)]="data.tournament"

的表达式中使用时会失败

我尝试使用以下布尔值loading禁用渲染:

<div class="container-fluid" *ngIf="data">

但是我得到一个ExpressionChangedAfterItHasBeenCheckedError

那么,如何在加载数据时不出现那些错误?

0 个答案:

没有答案