键入 \'x[] | null\' 不可分配给类型 \'x[]\'

分享于2022年10月08日 angular ngrx observable rxjs typescript 问答
【问题标题】:Type 'x[] | null' is not assignable to type 'x[]'键入 \'x[] | null\' 不可分配给类型 \'x[]\'
【发布时间】:2022-09-30 19:03:31
【问题描述】:

我在绑定角度值时遇到问题。 我有一个 observable 返回一个数组,如下所示:

entity$ = new Observable(observer => {
if (this.entities[this.selectedEntityId] !== undefined) {
  observer.next([this.entities[this.selectedEntityId]]);
}
observer.complete();
})
.pipe(filter(e => e !== undefined));

之后,我尝试像这样绑定它:


   [selectedItems]=\"entityService.entity$ | async\"

虽然我得到了错误:

Type \'Entity[] | null\' is not assignable to type \'any[]\'.

我对 Angular 比较陌生,所以我对这个问题感到困惑。


【解决方案1】:

快速修复将是 [selectedItems]="$any(entityService.entity$ | async)"

【讨论】: