2017-11-23 10 views
0

나는 파이어베이스와 이온 3을 사용하고 있습니다.AngularFire 5.0으로 업그레이드

지금까지 내가 angularfire 4.0 사용하고 다음 코드는 중포 기지에서 데이터 나에게 관찰을했다 : 제거 this 페이지 FirebaseObjectObservable에 따라,

obsToData: FirebaseObjectObservable<any>; 

    constructor(public nav: NavController, public shared: SharedProvider, 
       public DB: AngularFireDatabase) { 

       this.obsToData = DB.object('/myData'); 
    } 

지금 내가 대신 AngularFireObject를 사용할 필요가, 어떻게 내가 할 수있는 데이터 가져 오기?

나는 다음과 같이 변경했다 :

obsToData: AngularFireObject<any>; 

    constructor(public nav: NavController, public shared: SharedProvider, 
       public DB: AngularFireDatabase) { 

       this.obsToData = DB.object('/myData'); 
    } 

을하지만 난 방법 중포 기지에서 내 데이터에 새로운 개체에서 관찰을 얻을 수있는 방법을 찾을 수 없습니다.

누군가가 angularfire 5.0 사용에 성공 했습니까?

답변

2

AngularFireDatabase 개체 참조에서 Observable을 가져 오려면 valueChanges()을 사용해야합니다.

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 
    } 

편집은 데이터를 얻을하고 저장, FirebaseObjectObservable이 angularfire 4 angularfire2/데이터베이스에서 가져온 것입니다 어떤 관찰

this.obsToData.subscribe(data=>{ 
     console.log(data); 
    },error=>{ 
     console.log(error); 
    }) 
+0

문제처럼 가입 만 angularfire 5 것 같다하기 정의되지 않았으므로 지금 컴파일되지 않습니다. 지금 가져올 위치를 알고 계십니까? – rafraph

+0

타입을 'Observable '으로 변경하십시오. –

+0

이제 컴파일이 성공적으로 완료되었지만 obsToData에서 데이터를 가져 오지 못했습니다. 이 변수에 있어야합니까? – rafraph