Comment utiliser CSS spinner Angular2 pendant le chargement asynchrone liste?

Cela semble comme il serait simple mais je ne trouve rien à répondre.
Ce que j'essaie de faire est d'avoir un CSS spinner/chargeur tout en asynchrone liste des charges. J'ai essayé toutes sortes de choses, y compris en essayant d'utiliser ngSwitch, mais jusqu'à présent, rien ne fonctionne et le compteur tourne juste indéfiniment. Voici le code de base:

<div class="col-md-2 mediaContainer">
  Media:
  <ul class="media">
    <li *ngFor="let medium of media | async"
        [class.selected] = "medium === selectedMedium"
        (click)="onSelect(medium)">
      {{medium.name}}
    </li>
  </ul>
</div>

Alors que j'ai essayé beaucoup de choses, ce qui suit est un exemple qui ne fonctionne pas:

<div class="col-md-2 mediaContainer">
  Media:
  <ul class="media" [ngSwitch]="status">
    <li *ngSwitchCase="loading"><loaders-css [loader]="'square-spin'" [loaderClass]="'my-loader'"></loaders-css></li>
    <li *ngFor="let medium of media | async"
        [class.selected] = "medium === selectedMedium"
        (click)="onSelect(medium)">
      {{medium.name}}
    </li>
  </ul>
</div>

J'ai aussi mis le ngSwitch et/ou le commutateur cas à l'intérieur de la liste, mais cela ne fonctionne pas non plus. J'ai le sentiment que "status" ne fonctionne qu'avec les éléments eux-mêmes de ne pas leur contenu, mais je ne suis pas sûr de savoir comment définir un commutateur de valeur (c'est à dire https://angular.io/docs/ts/latest/api/common/index/NgSwitch-directive.html) et cela semble être quelque chose à voir avec une promesse peut-être. Des idées? Compte tenu de la nature de ce que je fais il me semble qu'il serait assez commun...

  • Voir: stackoverflow.com/questions/38144655/...
  • <li *ngSwitchCase="chargement"> remplacer par <li *ngIf="chargement"> et de tenir chargement en tant que booléen.. si sa valeur devenir vrai, et si sa valeur est false, il ne sera pas excute