如果未在ngfor中使用,则输入失败

时间:2018-12-30 00:52:00

标签: angular ngfor

为什么此方法<page *ngFor="let page of pages" [page]="page"></page>有效而<page [page]="pages[0]"></page>无效? 如果我总是在数组中至少有一个元素sholdn是不是相同的输出?在第一种情况下,它可以工作,但是在第二种情况下,我获得了undefined的{​​{1}}值。

2 个答案:

答案 0 :(得分:1)

这取决于pages的初始值,如果初始值为null,然后填充这些值,则短时间未定义pages[0],并且如果存在javascript错误,则会中断即使页面绑定中的值不起作用

要检查是否属于您情况,请尝试

<page [page]="pages[0]" *ngIf="pages && pages.length"></page>

答案 1 :(得分:1)

尝试执行以下操作以确保pages存在且不为空:

<page *ngIf="pages?.length" [page]="pages[0]" ></page>