2016-08-19 81 views
7

我想在模板语法这是一个数组评价如下:如何获得数组的长度在模板语法

FAIL 
{{ cols.length }} 

我得到下面的错误。

platform-browser.umd.js:1900 ORIGINAL EXCEPTION: TypeError: Cannot read property 'length' of undefined 

但我不重复,所以我知道的那部分工作:

 SUCCESS 
    <th *ngFor="let h of cols"> 
     {{h}} 
     </th> 

回答

28

使用

{{ cols?.length }} 

或者

<div *ngIf="cols">{{ cols.length }}</div> 

如果你想为空数组打印0 ,使用

{{ cols?.length || '0' }} 

原因:当Angular2加载模板时,不会启动cols。我们希望等到它准备好访问其成员。

+0

如果为空然后如何打印零 –

+1

结帐我更新的答案。 –

+0

谢谢你的回答@Harry –