问题是,在评估字符串时,必须将它们放在单引号中,这样修复就非常简单:
<div class="icon-group" [ngSwitch]="published?.availableOn">
<mat-icon *ngSwitchCase=" 'Android' " fontSet="fontawesome" fontIcon="fa-android" class="green-icon"></mat-icon>
<mat-icon *ngSwitchCase=" 'Windows' " fontSet="fontawesome" fontIcon="fa-windows" class="blue-icon"></mat-icon>
<mat-icon *ngSwitchCase=" 'iOS' " fontSet="fontawesome" fontIcon="fa-apple"></mat-icon>
<mat-icon *ngSwitchCase=" 'Web' " fontSet="fontawesome" fontIcon="fa-internet-explorer"></mat-icon>
<ng-container *ngSwitchCase=" 'AndroidiOS' ">
<mat-icon fontSet="fontawesome" fontIcon="fa-android" class="green-icon"></mat-icon>
<mat-icon fontSet="fontawesome" fontIcon="fa-apple"></mat-icon>
</ng-container>
<mat-icon *ngSwitchDefault fontSet="fontawesome" fontIcon="fa-internet-explorer"></mat-icon>
</div>