I have a problem with my home-page.ts in ionic with this request:
this.providerFb = new firebase.auth.FacebookAuthProvider();
and here is my complete code:
import { Component } from '@angular/core';
import { Platform } from '@ionic/angular';
import { AngularFireDatabase } from '@angular/fire/database';
import { AngularFireAuth } from '@angular/fire/auth';
import * as firebase from 'firebase/app';
import { Facebook, FacebookLoginResponse } from '@ionic-native/facebook/ngx';
import { auth } from 'firebase/app'
@Component({
selector: 'app-home',
templateUrl: 'home.page.html',
styleUrls: ['home.page.scss'],
})
export class HomePage {
public providerFb: firebase.auth.FacebookAuthProvider;
connected=false;
userId:any;
constructor( public afDB: AngularFireDatabase,
public fauth: AngularFireAuth,
public fb: Facebook,
public platform: Platform
) {
this.providerFb = new firebase.auth.FacebookAuthProvider();
this.fauth.authState.subscribe(auth => {
if(!auth){
console.log("non connecté");
}else{
console.log("utilisateur connecte"+ auth.uid)
this.connected = true;
}
});
}
facebookLogin() {
if (this.platform.is('cordova')) {
console.log('PLateforme cordova');
console.log('PLateforme cordova');
this.facebookCordova();
} else {
console.log('PLateforme Web');
this.facebookWeb();
}
}
facebookCordova() {
this.fb.login(['email']).then( (response) => {
const facebookCredential = firebase.auth.FacebookAuthProvider
.credential(response.authResponse.accessToken);
firebase.auth().signInWithCredential(facebookCredential)
.then((success) => {
console.log('Info Facebook: ' + JSON.stringify(success));
}).catch((error) => {
console.log('Erreur: ' + JSON.stringify(error));
});
}).catch((error) => { console.log(error); });
}
facebookWeb() {
this.fauth.signInWithPopup(new firebase.auth.FacebookAuthProvider())
.then((success) => {
console.log('Info Facebook: ' + JSON.stringify(success));
console.log('DisplayName: ' + success.user.displayName);
console.log('UserID: ' + success.user.uid);
console.log('photoURL: ' + success.user.photoURL);
}).catch((error) => {
}).catch((error) => {
console.log('Erreur: ' + JSON.stringify(error));
});
}
logout(){
this.fauth.signOut();
this.connected= false;
}
}