如何解决角度误差

问题描述 投票:0回答:1

我想删除当前登录的用户,这就是我使用过滤器的原因。但我收到一个错误,它是:

类型'Subscription'缺少类型'Observable [

'中的以下属性:_isScalar,源,运算符,提升和另外6个。

这里是代码:

@Select(UserPageState.get('collection')) users$: Observable<Array<Partial<User>>>;
async ngOnInit() {
  const USER = this.creds.credentials['id'];
  this.users$ = this.users$.subscribe(param => param.filter(x => x.id !== USER));
  await this.store.dispatch(new UserPageList({ start: 1, length: this.pageSize })).toPromise();
}

HTML

<ag-grid-angular
      style="width: 100%; height: 100%;"
      [class]="(darkMode$ | async) ? 'ag-theme-balham-dark' : 'ag-theme-balham'"
      [gridOptions]="gridOptions"
      [rowData]="users$ | async"
      [columnDefs]="columnDefs"
      [frameworkComponents]="frameworkComponents"
      (gridReady)="onGridReady($event)"
      (firstDataRendered)="onFirstDataRendered($event)"
    >
    </ag-grid-angular>
javascript angular typescript
1个回答
0
投票

问题在下面的语句中,订阅一个observable返回一个Subscription实例,您再次将其分配给observable。

this.users$ = this.users$.subscribe(param => param.filter(x => x.id !== USER));

只需不再将其分配为可观察的,它将解决此问题。

this.users$.subscribe(param => param.filter(x => x.id !== USER));
© www.soinside.com 2019 - 2024. All rights reserved.