Я создал приложение с Ionic 2, которое использует Firebase с аутентификацией по электронной почте / паролю. Я использую angularfire2, чтобы поговорить с firebase.
export const firebaseConfig = {
apiKey: "***********",
authDomain: "***********",
databaseURL: "*****************",
storageBucket: "***************"
};
const myFirebaseAuthConfig = {
provider: AuthProviders.Password,
method: AuthMethods.Password
}
AngularFireModule.initializeApp(firebaseConfig, myFirebaseAuthConfig)
Все работает нормально, но теперь я решил добавить вход в Facebook, и я не могу заставить его работать!
Вот шаги, которым я следую. Я установил плагин facebook и правильно настроил Facebook - Firebase для аутентификации Facebook, добавил платформы в facebook и т. Д.:
ionic plugin add cordova-plugin-facebook4 --variable APP_ID="123456789" --variable APP_NAME="myApplication"
Теперь проблема: официальная документация от angularfire2 говорит об использовании этого метода для подключения к firebase и аутентификации пользователей facebook:
facebookLogin(){
Facebook.login(['email']).then( (response) => {
let facebookCredential = firebase.auth.FacebookAuthProvider
.credential(response.authResponse.accessToken);
**firebase**.auth().signInWithCredential(facebookCredential)
.then((success) => {
console.log("Firebase success: " + JSON.stringify(success));
})
.catch((error) => {
console.log("Firebase failure: " + JSON.stringify(error));
});
}).catch((error) => { console.log(error) });
}
Если я попытаюсь настроить firebase в своем приложении, конечно, произойдет сбой.
import firebase from 'firebase';
firebase.initializeApp({
apiKey: "************",
authDomain: "************",
databaseURL: "**************",
storageBucket: "***************"
})
Если я попытаюсь использовать этот метод с angularfire2, он скажет, что метод signInWithCredential не существует. Как я могу использовать angularfire2 в своем приложении, но использовать импорт firebase, чтобы вместе достичь входа в facebook в firebase ?!