Firebase 5 Angular 5 AngularFireList.snapshotChanges()错误

Firebase 5 Angular 5 AngularFireList.snapshotChanges()错误,firebase,firebase-realtime-database,angular5,angularfire2,Firebase,Firebase Realtime Database,Angular5,Angularfire2,当我尝试在Angular5/Firebase5应用程序中订阅AngularFireList时,出现以下错误 zone.js:192 Uncaught TypeError: Object(...) is not a function at SwitchMapSubscriber.eval [as project] (changes.js:7) at SwitchMapSubscriber._next (switchMap.js:91) at SwitchMapSubscri

当我尝试在Angular5/Firebase5应用程序中订阅AngularFireList时,出现以下错误

zone.js:192 Uncaught TypeError: Object(...) is not a function
    at SwitchMapSubscriber.eval [as project] (changes.js:7)
    at SwitchMapSubscriber._next (switchMap.js:91)
    at SwitchMapSubscriber.Subscriber.next (Subscriber.js:95)
    at RefCountSubscriber.Subscriber._next (Subscriber.js:131)
    at RefCountSubscriber.Subscriber.next (Subscriber.js:95)
    at Subject.next (Subject.js:56)
    at ConnectableSubscriber.Subscriber._next (Subscriber.js:131)
    at ConnectableSubscriber.Subscriber.next (Subscriber.js:95)
    at Notification.observe (Notification.js:32)
    at AsyncAction.DelaySubscriber.dispatch (delay.js:91)
我的服务和控制器类内容如下:

1) 名为“FirebaseService”的服务

customers: AngularFireList<any>;
getCustomers(){
    this.customers = this.fire.list('users');
    return this.customers;
  }

AngularFire的最新版本需要rxjs 6。如果您有尚未升级的依赖项,请升级rxjs并包括
rxjs compat

我在使用AngularFireList.valueChanges()时遇到类似问题 安装最新版本的AngularFire(5.0.0-rc.10)时会出现npm警告

npm警告angularfire2@5.0.0-rc.10需要rxjs@^6.0.0的对等机,但未安装任何对等机

所以我安装了这个依赖项

npm安装rxjs@^6.0.0——在我的项目中保存

还需要安装以下依赖项

npm安装——保存rxjs compat


问题解决了

您需要提供更多的背景,以便我们可以帮助您;您尝试订阅的代码、firebase服务(如果有)、您尝试检索的列表结构……嗨,Javier,我添加了我尝试订阅的代码和尝试检索数据列表的服务。希望这将有助于理解。谢谢你可能想再次检查你的工作。这是100%的原因和解决办法。我是AngularFire的维护者(顺便说一句;)哇,我一直在寻找这个解决方案的整个网络
constructor(private firebase: FirebaseService) { }

serviceProviders: ServiceProvider[];
var x = this.firebase.getServiceProviders();
    x.snapshotChanges().subscribe(item => {
      this.serviceProviders = [];      
      item.forEach(element => {
        var y = element.payload.toJSON();
        y["$key"] = element.key;
        this.serviceProviders.push(y as ServiceProvider);
      });
    });