gpt4 book ai didi

javascript - 为什么不能在 ngFor 中使用 var 而不是 let

转载 作者:可可西里 更新时间:2023-11-01 02:38:17 24 4
gpt4 key购买 nike

据我所知,我们在 javascript 中使用 varlet 进行变量声明,唯一的区别是 var 的作用域为当前函数,而 let 的范围限定为当前 block 。所以如果我在任何地方使用 var 而不是 let 它应该可以工作。但是在下面的代码中...

<li *ngFor="let fruit of fruits">
{{ fruit}}
</li>

...如果我使用 var 它会报错。

<li *ngFor="var fruit of fruits">
{{ fruit}}
</li>

Error: Uncaught (in promise): Error: Template parse errors: Parser Error: Unexpected token var at column 1 in [var fruit of fruits] in ng:///AppModule/AppComponent.html@4:4 ("

谁能告诉我为什么会这样?

最佳答案

您在此处输入的表达式并不是真正的 javascript(或 typescript),而是一个 Angular 表达式。

您可以在这里做一些在 JS 或 TS 中做不到的事情,例如使用管道 (*ngFor="contacts | async")。

在幕后,这只是像这样的语法糖:

 <ng-template ngFor let-contact [ngForOf]="contacts | async">

参见 https://toddmotto.com/angular-ngfor-template-element#ngfor-and-ng-template

关于javascript - 为什么不能在 ngFor 中使用 var 而不是 let,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45408862/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com