IONIC 2 RefrenceError: firebase is not defined

IONIC 2 RefrenceError: firebase is not defined

我已经为此纠结了好一阵子了。

我正在尝试将 Facebook 身份验证用于 Firebase。我还在 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);
      });
  });
}

这些是我的进口商品。

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

此外,请注意我在项目文件夹中有 运行 npm install firebase angularfire2 --save

您正在使用这个:

firebase.auth.FacebookAuthProvider

但是你没有导入 firebase,即使你导入了 angularfire,如果你像你正在使用的那样使用它,你也需要导入 firebase。

所以尝试添加这个:

import * as firebase from 'firebase';