Вы можете создать свой собственный канал, который оценивает список и отвечает на один по умолчанию, если исходный список пуст.Например:
Определите канал следующим образом:
@Pipe({name: 'empty'})
export class EmptyPipe implements PipeTransform {
transform(value: any[], emptyText: string = 'NO ITEMS'): any {
return value && value.length > 0? value : [{name: emptyText}];
}
}
Добавьте канал в объявление вашего модуля:
NgModule({
imports: [ BrowserModule ],
declarations: [ AppComponent, EmptyPipe ],
bootstrap: [ AppComponent ]
})
export class AppModule { }
И, наконец, используйте канал в* ngДля следующего содержания:
<span *ngFor="let d of myData | empty; last as isLast">
{{d.name}}
<span *ngIf="!isLast">,</span>
</span>