在我的Angular 4项目中,该项目运行正常,但是在控制台窗口中出现了40次“无法读取未定义的属性'Description'的错误”之类的错误。
我的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);
}
}
答案 0 :(得分:1)
您可能在这里犯了一个菜鸟错误,但是可以通过在等待数据时使用helpObject
上的safe navigation operator来保护它免受空值或未定义的值的影响, (当时尚未定义)要呈现:
<div [innerHtml]="helpObject?.Description"></div>
或者,您可以使用*ngIf
解决您的问题。这样可以防止在定义helpObject
之前渲染该div。
<div *ngIf="helpObject">
..
<div [innerHtml]="helpObject?.Description"></div>
..
</div>