5

我刚刚升级到 AngularFire2 rc 5.0。

我调整了我的代码,使其与新的类型和函数相匹配,但是在尝试订阅 a 时出现以下错误.object(path)

Property 'subscribe' does not exist on type 'AngularFireObject'

我的代码如下。

提供者:

getEvent(id: string): AngularFireObject<any> {
    let path = `/events/${id}`;
    return this.af.object(path).valueChanges();
  }

页:

...
event$: AngularFireObject<any>;
...

// Retrieve event's info
this.event$ = this.eventService.getEvent(this.id);

// Retrieve event's ownership info
let subscription = this.event$.subscribe(event => {
  this.owner$ = this.userService.getUserPublicInfo(event.owner);
});

任何想法?

4

1 回答 1

0

您正在使用的valueChanges()意思getEvent(id: string)是返回FirebaseObjectObservable<any>not AngularFireObject<any>在这里检查。

AngularFireObject<any>由返回this.af.object(path)

更改函数的返回类型。

getEvent(id: string): FirebaseObjectObservable<any> {
    let path = `/events/${id}`;
    return this.af.object(path).valueChanges();
  }
于 2017-11-23T11:04:49.970 回答