Угловая - асинхронная труба - поведение шаблона
Я связываю наблюдаемое с моим шаблоном Angular и имею условное связывание, чтобы показать сообщение "loading..", пока асинхронный канал не разрешит данные.
Привязка работает нормально, и я получаю данные, и появляется сообщение "загрузка...", пока я не получу данные.
<div *ngIf=" (combinedResult$ | async ) as favData ;else loading">
<p> {{ Binding Goes here}} </p>
</div>
<ng-template #loading>
loading...
</ng-template>
но если я изменю *ngIf, обернув результат в объект "details:", тогда условие if не будет работать, и я не смог увидеть сообщение "loading..". (Но данные являются обязательными).
<div *ngIf=" { details: (combinedResult$ | async ) } as favData
;else loading">
<p> {{ Binding Goes here}} </p>
</div>
Что мне здесь не хватает..?
1 ответ
В этом, *ngIf="{ details: (combinedResult$ | async ) } as favData; else loading"
{ details: (combinedResult$ | async ) }
всегда оценивается как истина, поскольку это не условие, а присваивание.
Таким образом, он никогда не покажет загрузку, поскольку ngIf всегда оценивается как true