2017-01-12 8 views
0

이 오류를예외 : 이온 2 응용 프로그램에서 페이스 북 로그인 후 (약속을) 캐치되지 않는

예외를 얻을 : 캐치되지 않는 (약속) : 거짓

내 이온의 페이스 북 로그인 후 2 앱. 연결이 성공했지만이 오류가 발생합니다. enter image description here

내 app.component.ts

import { Component,ViewChild } from '@angular/core'; 
import { Platform,Nav, LoadingController} from 'ionic-angular'; 
import { StatusBar, Splashscreen } from 'ionic-native'; 

//import pages 
import { HomePage } from '../pages/home/home'; 
import { LoginPage } from '../pages/login/login'; 
import { SignupPage } from '../pages/signup/signup'; 
import { TabsPage } from '../pages/tabs/tabs'; 
import { AboutPage } from '../pages/about/about'; 
import {StudentsPage} from '../pages/students/students'; 



//import plugins 
//import firebase from 'firebase'; 
import {AngularFire, FirebaseListObservable} from 'angularfire2'; 

@Component({ 
    template: `<ion-nav [root]="rootPage"></ion-nav>` 
}) 
export class MyApp { 
    @ViewChild(Nav) nav: Nav; 
    public rootPage:any; 
    //ref firebase 
    public semesters:any; 
    public userProfile: any; 
    //user variables 
    public currentUser: any; 
    public id_user:any; 
    public reg_boolean:any="true"; 
    public department:any; 
    public year:any; 
    public semester:any; 
    public semesterdetails:any; 
user = {}; 

    constructor(platform: Platform, public loadingCtrl: LoadingController,public af: AngularFire){ 
    this.af.auth.subscribe(user => { 
     if(user) { 
     this.rootPage = SignupPage; 
     console.log("connected success"); 

     } 
     else { 
     // user not logged in 
     this.user = {}; 
     this.rootPage=LoginPage; 

     } 
    }); 

    } 
} 

내 login.ts 내 문제가 있지만, 내가 어떤 문제를 찾지 못했습니다 것을 확인하려고

import { Component } from '@angular/core'; 
import {NavController,LoadingController,AlertController } from 'ionic-angular'; 

//import pagess 

import { HomePage } from '../home/home'; 
//import cordova plugins 
import { Facebook } from 'ionic-native'; 
import firebase from 'firebase'; 
/* 
    Generated class for the LoginPage page. 

    See http://ionicframework.com/docs/v2/components/#navigation for more info on 
    Ionic pages and navigation. 
*/ 
@Component({ 
    selector: 'page-login', 
    templateUrl: 'login.html' 
}) 
export class LoginPage { 
    userProfile: any = null; 
    loading: any; 
constructor(public nav: NavController, public alertCtrl: AlertController, public loadingCtrl: LoadingController) {} 
    ionViewDidLoad() { 

    } 
    facebookLogin(){ 
    Facebook.login(['email']).then((response) => { 
     let facebookCredential = firebase.auth.FacebookAuthProvider.credential(response.authResponse.accessToken); 
     var that = this; 
     firebase.auth().signInWithCredential(facebookCredential) 
      .then((success) => { 
      console.log("Firebase success: " + JSON.stringify(success)); 
      that.userProfile = success; 
      console.log(that.userProfile); 
      // that.nav.setRoot(HomePage); // after login in it goes to homepage 

      }) 
      .catch((error) => { 
      console.log("Firebase failure: " + JSON.stringify(error)); 
      }); 

    }).catch((error) => { console.log(error) }); 
    let loader = this.loadingCtrl.create({ 
     dismissOnPageChange: true, 
    }); 

    loader.present(); 
    } 

    GmailLogin(){ 

    } 

} 

. 나는 또한 안드로이드 에뮬레이터와 여전히 같은 문제를 확인합니다.

답변

1

이것은 ionic-2 rc4의 버그로 인한 것입니다. dismissOnPageChange: true이 설정되면 발생합니다. 이 issue을 확인하십시오. 이 문제는 rc5으로 수정되었으므로 확인하십시오.

+0

그래서 dismissOnpageChange를 제거 하시겠습니까? –

+0

@AdirZoari 언급 한 것처럼 그 버그입니다. 그래서 수동으로 해제하거나''ionic2 rc5''에 더 잘 업데이트 할 수 있습니다. – raj

+0

괜찮습니다. 업데이트 할 명령을 아십니까? –