我是Angular的新手,对此代码有以下疑问。
在视图中,我有以下代码:
CreateAPIView
重复英雄$ 。这不是数组,而是 Observable ,因为它正在处理相关组件的此属性:
<li *ngFor="let hero of heroes$ | async" >
<a routerLink="/detail/{{hero.id}}">
{{hero.name}}
</a>
</li>
这对我来说还不是很清楚。
按照我的解释(请确认或反驳)。
* ngFor 无法直接在 heroes $ 上进行迭代,因为它是可观察的。
< / li>此可观察会发出英雄数组,但这是异步行为。
async 管道是要对此 Observable 进行订阅的管道,当管道准备就绪时(发出阵列时), * ngFor 指令可以在此数组上进行迭代。
实际上,我可以直接在视图中执行此操作,而不必在订阅Observable的组件中执行。
答案 0 :(得分:2)
如果以这种方式编写,则更加清楚:
(heroes$ | async) as heroList