Firebase 升级到AngularFire 5.0
我用的是离子3和firebase 到目前为止,我使用angularfire 4.0,以下代码为我提供了firebase数据的可观察性:Firebase 升级到AngularFire 5.0,firebase,ionic-framework,ionic3,angularfire2,Firebase,Ionic Framework,Ionic3,Angularfire2,我用的是离子3和firebase 到目前为止,我使用angularfire 4.0,以下代码为我提供了firebase数据的可观察性: obsToData: FirebaseObjectObservable<any>; constructor(public nav: NavController, public shared: SharedProvider, public DB: AngularFireDatabase) {
obsToData: FirebaseObjectObservable<any>;
constructor(public nav: NavController, public shared: SharedProvider,
public DB: AngularFireDatabase) {
this.obsToData = DB.object('/myData');
}
但我没有找到从这个新物体到firebase数据的可观测数据的方法
是否有人成功使用angularfire 5.0?您需要使用从angularfire数据库对象引用中获取可观察对象
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
}
您需要使用从AngularFireDatabase对象引用中获取可观察对象
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
}
问题是angularfire 4中的FirebaseObjectObservable是从angularfire2/数据库导入的,但在angularfire 5中,它似乎没有在那里定义,因此现在没有编译。您知道现在应该从哪里导入它吗?将类型更改为
Observable
,现在它正在成功编译,但我没有在obsToData中获取数据。它应该在这个变量中吗?你需要订阅它。。取决于您访问的方式。控制台登录订阅。我找到了订阅的方法。非常感谢问题是angularfire 4中的FirebaseObjectObservable是从angularfire2/数据库导入的,但在angularfire 5中似乎没有定义,因此现在没有编译。您知道现在应该从哪里导入它吗?将类型更改为Observable
,现在它正在成功编译,但我没有在obsToData中获取数据。它应该在这个变量中吗?你需要订阅它。。取决于您访问的方式。控制台登录订阅。我找到了订阅的方法。非常感谢你
this.obsToData.subscribe(data=>{
console.log(data);
},error=>{
console.log(error);
})