Firebase 5 Angular 5 AngularFireList.snapshotChanges() 错误
Firebase 5 Angular 5 AngularFireList.snapshotChanges() error
当我尝试在 Angular 5/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)
我的Service和Controllerclass内容如下,
1) 名为 'FirebaseService'
的服务
customers: AngularFireList<any>;
getCustomers(){
this.customers = this.fire.list('users');
return this.customers;
}
2) 控制器
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);
});
});
AngularFire 的最新版本需要 rxjs 6。请升级 rxjs 并包含 rxjs-compat
如果您有尚未升级的依赖项。
我在使用 AngularFireList.valueChanges() 时遇到了类似的问题
安装最新版本的 AngularFire (5.0.0-rc.10)
时出现 npm 警告
npm WARN angularfire2@5.0.0-rc.10 requires a peer of rxjs@^6.0.0 but none is installed
所以我已经安装了那个依赖项
npm install rxjs@^6.0.0 --save
在我的项目中
还需要安装如下依赖
npm install --save rxjs-compat
问题解决
当我尝试在 Angular 5/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)
我的Service和Controllerclass内容如下,
1) 名为 'FirebaseService'
的服务customers: AngularFireList<any>;
getCustomers(){
this.customers = this.fire.list('users');
return this.customers;
}
2) 控制器
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);
});
});
AngularFire 的最新版本需要 rxjs 6。请升级 rxjs 并包含 rxjs-compat
如果您有尚未升级的依赖项。
我在使用 AngularFireList.valueChanges() 时遇到了类似的问题 安装最新版本的 AngularFire (5.0.0-rc.10)
时出现 npm 警告npm WARN angularfire2@5.0.0-rc.10 requires a peer of rxjs@^6.0.0 but none is installed
所以我已经安装了那个依赖项
npm install rxjs@^6.0.0 --save
在我的项目中
还需要安装如下依赖
npm install --save rxjs-compat
问题解决