angular2在模板中使用属性引起Cannot read property 'xxx' of undefined

angular在模板中使用属性引起Cannot read property 'xxx' of undefinedhtml

在使用ng2的过程当中,发现模板中以下方式异步

<li *ngFor="let item of model">htm

{{item.name}}
</li>对象

不会又任何问题.blog

若是是一下未使用结构指令方式,直接使用组件的属性get

<li >it

{{model.name}}
</li>模板

就会报错null错误,一开始百思不得其解,后来搞明白,model是异步请求获取的数据,在定义的时候let mode:any 时是属于unde值,而这时组件模板已经开始渲染了,也就会引起异常,知道缘由,这就好办了,又两种方式能够处理:angular

1.定义组件属性的时候初始化对象: let mode:any={};渲染

2.在模板中使用ngIf指令:<li *ngIf="model">{{model.name}} </li>

以上两种方式均能保证组件模板在第一次初始化时不会由于null属性引用引起异常.

相关文章
相关标签/搜索