循环遍历字符串数组 - Angular2

10

虽然很基础,但我不知道如何在Angular2的HTML模板中显示字符串数组。

.html

<ul>
       <li *ngFor="#number of numberOptions">
          {{number}}
       </li>
</ul>

.ts

this.numberOptions = ["I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX", "X"];

对我来说上面的技巧不起作用,文本编辑器显示在ngFor中的#number出现错误。这在新版本中已经过时了吗?还是我在这里做错了什么?

3个回答

24
你需要使用 let 声明变量 number
   <li *ngFor="let number of numberOptions">
      {{number}}
   </li>

1
谢谢您的回答。只是想知道为什么 #number 不起作用。 - Amit Chigadani
因为你必须使用 let 声明变量。这就像在 JavaScript 中的传统 for 循环:for(var i = 0; i < length; i++){}。这是相同的事情,但是不同之处在于 TypeScript 中必须使用 let 而不是 var。你需要在 for 的作用域块内声明变量,不能在外部使用已声明的变量。 - SrAxi
我非常清楚 TypeScript 中的 let,但我的问题在于这里:https://dev59.com/Ppffa4cB1Zd3GeqP7GSt。如果您看到该帖子,他们使用 # 声明变量。 - Amit Chigadani
2
@AmitChigadani # 语法是在 Angular 的 beta 版本中使用的。 - AT82
1
哦。非常感谢 @AJT_82。 - Amit Chigadani

5

使用let替代#

<ul>
       <li *ngFor="let number of numberOptions">
          {{number}}
       </li>
</ul>

2
<ul>
       <li *ngFor="let number of numberOptions">
          {{number}}
       </li>
</ul>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接