无法读取Angular中未定义的属性“描述”

问题描述 投票:-1回答:1

在我的Angular 4项目中,项目工作正常,但我在控制台窗口中得到了一些错误,如“无法读取属性'描述'未定义”40次。

我的html代码如下所示;

<div [innerHtml]="helpObject.Description"></div>

这是我的组件代码;

export class FooterComponent {
   helpObject: any;

   errorMsg: string;

   constructor(private _emService: EmService) {
   }

   ngOnInit() {
      this._emService.getContent("help")
        .subscribe(resData => this.helpObject = resData,
            resError => this.errorMsg = resError);
   }
}
angular
1个回答
1
投票

你可能在这里犯了一个菜鸟错误,但这可以通过在你的safe navigation operator上使用helpObject来保护它免受空值或未定义的值来解决,而你在等待数据(在那个时刻未定义)是呈现:

<div [innerHtml]="helpObject?.Description"></div>

或者,您可以使用*ngIf来解决您的问题。这可以防止在定义helpObject之前渲染div。

<div *ngIf="helpObject">
..
<div [innerHtml]="helpObject?.Description"></div>
..
</div>
© www.soinside.com 2019 - 2024. All rights reserved.