我正在使用 ionic 3 和 firebase。
到目前为止,我使用 angularfire 4.0,以下代码为我提供了来自 firebase 的数据的可观察值:
obsToData: FirebaseObjectObservable<any>;
constructor(public nav: NavController, public shared: SharedProvider,
public DB: AngularFireDatabase) {
this.obsToData = DB.object('/myData');
}
现在,根据this https://github.com/angular/angularfire2/blob/master/docs/version-5-upgrade.md page FirebaseObjectObservable
已删除,我需要使用AngularFireObject
相反,我怎样才能获取数据?
我做了以下更改:
obsToData: AngularFireObject<any>;
constructor(public nav: NavController, public shared: SharedProvider,
public DB: AngularFireDatabase) {
this.obsToData = DB.object('/myData');
}
但我没有找到如何从这个新对象获取可观察到的数据到 firebase 的数据的方法。
有人成功使用AngularFire 5.0吗?
你需要使用valueChanges() https://github.com/angular/angularfire2/blob/master/docs/rtdb/objects.md#create-an-object-binding从 AngularFireDatabase 对象引用获取 Observable。
obsRef: AngularFireObject<any>;
obsToData: Observable<any>;
constructor(public nav: NavController, public shared: SharedProvider,
public DB: AngularFireDatabase) {
this.obsRef = DB.object('/myData');//reference
this.obsToData = this.obsRef.valueChanges();//Observable
}
EDIT获取数据并保存它,像任何可观察的一样订阅
this.obsToData.subscribe(data=>{
console.log(data);
},error=>{
console.log(error);
})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)