Angular - 异步管道 - 模板绑定行为

Angular - Async Pipe - Template Binding Behavior

我正在将一个 observable 绑定到我的 Angular 模板,并有条件绑定以显示 'loading..' 消息,直到异步管道解析数据。

绑定工作正常,我正在获取数据并且 'loading..' 消息被触发,直到我获取数据。

<div *ngIf=" (combinedResult$ | async )  as favData ;else  loading"> 
   <p> {{ Binding Goes here}} </p>
</div>

<ng-template #loading>
       loading...   
</ng-template>

但是如果我通过将结果包装到 "details:" 对象中来更改 *ngIf,则 if 条件不起作用并且我看不到 'loading..' 消息。 (但数据是绑定的)。

 <div *ngIf=" { details: (combinedResult$ | async ) } as favData  
   ;else  loading">

      <p> {{ Binding Goes here}} </p>

  </div>

我在这里错过了什么..?

在此,*ngIf="{ details: (combinedResult$ | async ) } as favData; else loading"

{ details: (combinedResult$ | async ) } 始终计算为真,因为它不是条件而是赋值。

所以它永远不会显示加载,因为 ngIf 总是评估为 true