Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firebase 升级到AngularFire 5.0_Firebase_Ionic Framework_Ionic3_Angularfire2 - Fatal编程技术网

Firebase 升级到AngularFire 5.0

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) {

我用的是离子3和firebase

到目前为止,我使用angularfire 4.0,以下代码为我提供了firebase数据的可观察性:

  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);
  })