Angular 2 - 无法读取属性' 0'未定义的错误

时间:2017-02-07 13:06:32

标签: angular angular-template

我从此网址[http://www.bcetupes.info/wp-json/wp/v2/posts?page=1&_embed]

中检索我的JSON文件

在我的模板中,我有这段代码

  <p *ngFor="let news of newsObj">
      {{news._embedded["wp:featuredmedia"][0]['id']}}
  </p>

问题在于我的JSON文件&#34; wp:featuredmedia&#34;可能会失踪。我已经尝试过几个例子{{news._embedded.featuredmedia?[0]?。id}}但我不知道如何在模板中解决这个问题。

我需要测试是否&#34; wp:featuredmedia&#34;存在于我的对象中......

1 个答案:

答案 0 :(得分:1)

在访问之前,您需要确保要访问的对象存在,否则您将遇到运行时错误。以下是使用*ngIf处理它的一种方法:

<p *ngFor="let news of newsObj">
   <span *ngIf="news._embedded["wp:featuredmedia"] !== undefined">
     {{news._embedded["wp:featuredmedia"][0]['id']}}
   </span>
</p>