2

저는 꽤 오랫동안 이걸로 머리카락을 당겨 왔습니다.IONIC 2 RefrenceError : firebase가 정의되지 않았습니다.

Firebase 용 Facebook Auth를 사용하려고합니다. 또한 app.module.ts 내 응용 프로그램을 초기화 한하지만 내 Android 기기에서 아래 언급 된 코드를 실행하면, 나는

"RefrenceError: firebase is not defined"

signInWithFacebook(){ 
    var _authInfo 

Facebook.login(['email']) 
    .then((_response) => { 
    console.log(_response) 

    _authInfo = _response 

    return this._FBUserProfile(); 

    }).then((success) => { 
    this.TEST = "IM IN"; 
    let creds = (firebase.auth.FacebookAuthProvider as any).credential(_authInfo.authResponse.accessToken) 
    let providerConfig = { 
     provider: AuthProviders.Facebook, 
     method: AuthMethods.OAuthToken, 
     remember: 'default', 
     scope: ['email'], 
    }; 
    this.af.auth.login(creds, providerConfig) 
     .then((success) => { 
     console.log("Firebase success: " + JSON.stringify(success)); 
     this. Error += (JSON.stringify(success)); 
     this.UID = success.auth.uid; 
     }) 
     .catch((error) => { 
     console.log("Firebase failure: " + JSON.stringify(error)); 
     this. Error += (JSON.stringify(error)) 
     }); 

    }) 
    .catch((_error) => { this. Error +=(_error) }) //Error caught here. 


} 



_FBUserProfile() { 

    return new Promise((resolve, reject) => { 
    Facebook.api('me?fields=id,name,email,first_name,last_name,picture.width(100).height(100).as(picture_small),picture.width(720).height(720).as(picture_large)', []) 
     .then((profileData) => { 
     console.log(JSON.stringify(profileData)); 
     return resolve(profileData); 
     }, (err) => { 
     console.log(JSON.stringify(err)); 
     return reject(err); 
     }); 
    }); 
} 

을 얻을 그리고이 내 수입이다. 내가 프로젝트 폴더에 npm install firebase angularfire2 --save를 실행 한

또한
import { Injectable } from '@angular/core'; 
import { AuthProviders, AngularFireAuth, FirebaseAuthState, AuthMethods, AngularFire } from 'angularfire2'; 
import { Platform } from 'ionic-angular'; 
import { Facebook } from 'ionic-native'; 

, 노트

답변

2

당신이 사용하고 있습니다 :

firebase.auth.FacebookAuthProvider

을하지만 중포 기지를 가져하지 않는, 심지어 당신은 당신이 angularfire 필요 가져 사용중인 firebase을 사용하는 경우 가져 오십시오.

그래서이 추가 시도 :

import * as firebase from 'firebase';

관련 문제