我遇到以下问题
无法获取未定义或空引用的属性“ senderDetails”
我在6号角使用了以下代码
<tr *ngIf="itemList.senderDetails?.length !=null">
<th scope="row">Sender Owner</th>
<td><strong>ID</strong>{{itemList.senderId}} |<strong>Name</strong>{{itemList.sender}}</td>
</tr>
上面的代码在chrom上运行良好,但是会在IE边缘引发未定义或空引用的错误
答案 0 :(得分:0)
这是因为开始时未定义您的itemList。您可以
初始化您的itemList
itemList = {};
或者如果您使用类来存储itemList数据
itemList:ItemList =新的ItemList();
向外部元素添加第二个* ngIf,以便在itemList未定义时不会执行内部代码* ngIf =“ itemList!= undefined”
答案 1 :(得分:0)
这是因为在呈现页面(视图)时,itemList对象为null或未定义。如果要从异步调用(api)获取itemList的数据,则会出现此类问题。因此,我们应该始终检查对象是否为null或未定义,如果不是,则可以访问其属性。在您的情况下,可以将以下代码用于“如果声明”。
<tr *ngIf="itemList && (itemList.senderDetails?.length !=null")>
答案 2 :(得分:0)
只需尝试
<tr *ngIf="itemList?.senderDetails?.length">
<th scope="row">Sender Owner</th>
<td><strong>ID</strong>{{itemList.senderId}} |<strong>Name</strong>{{itemList.sender}}</td>
</tr>