首页 > 解决方案 > 来自Angular中API数据的模板中的未定义错误

问题描述

我正在尝试从 API 数据中显示 HTML 模板中的值。我没有定义对象中的所有值。数据显示正确,但在控制台中出现以下错误。

TypeError:无法读取未定义的属性“名称”

如果我在我的应用程序中使用 API 属性声明该对象,它不会向我显示这些错误。但是,有没有办法在我的应用程序中声明每个对象。

例如:

JSON值返回{病例:29371419,死亡:931080,康复:21185046}

订阅 API 后,我将其分配给我的本地对象

this.getData().subscribe(res => {
    this.selectedCategory = res;
});

并在模板中

 <p>{{selectedCategory.cases}}</p>

它给了我价值,但在控制台中显示错误为

无法读取未定义的属性“案例”

如何摆脱这个错误?任何想法?

这是一个 stackblitz 演示 https://stackblitz.com/edit/angular-ivy-bhk6pw?file=src/app/app.component.ts

标签: htmljsonangular

解决方案


在 api 调用到达之前,cases您的selectedCategory. 您需要将模板更改为:

{{selectedCategory?.cases}}

工作演示


推荐阅读