该属性管道不适用于类型“ OperatorFunction <未知,[未知,布尔值,任何]>”

时间:2019-11-24 01:13:37

标签: javascript angular typescript ionic-framework

我已订阅要传送的数据。但是以某种方式它不起作用。我收到此错误:

  

属性管道不适用于类型“ OperatorFunction”

这是我的代码: 验证服务

authenticationState = new BehaviorSubject(false);
checkToken() {
 this.storage.get(TOKEN_KEY).then(access => {
 if (access) {
 this.user = this.helper.decodeToken(access);
 this.authenticationState.next(true);
           }
       });
   }

page.ts(在管道上出现错误)

ngOnInit() {
 this.subscription = combineLatest (
 this.authService.authenticationState, 
 from(this.storage.get(USER_ID))
    ).pipe(
 switchMap(
        ([isAuthenticated, id]) => isAuthenticated ? this.userService.getUserDetails(id) : of(null)
      )
    ).subscribe(
 result => {
 if (result) {
 this.information = result;
 console.log(this.information);
        } else {
        }
      },
 error => {
      }
    );
  }

1 个答案:

答案 0 :(得分:1)

错误提示您从错误的位置导入combineLatest,需要从combineLatest而非rxjs导入rxjs/operators。您需要combineLatest的“可观察的创建”版本,该版本位于rxjs中。

此外,from内也不需要combineLatest,因为StoragecombineLatest也接受Promise。

combineLatest的导入更改为:

import { combineLatest } from 'rxjs';