2016-11-10 3 views
0

私は達成しようとしていることがいくつかあります。まず、私の電子メールとパスワードは、ログインしているかどうかにかかわらず問題ありません。私は電子メールとパスワードがいっぱいになってログインする前に正しいかどうかをチェックするようにしたいと思っています。次に、登録時にユーザー名を入力して、プロファイルページに表示して、電子メールアドレスを明らかにする。私はFirebaseを使用しており、これはトリックを行うと思ったが、そうはしない。私はこれを見てStack overFlow Postと私は思っているすべての正しいが、それでもあなたは資格情報なしでログインさせる。Swift:Firebaseでの認証情報とユーザ名の追加テキストフィールドの使用

@IBAction func loginRegisterBtnPressed(_ sender: AnyObject) { 
    performSegue(withIdentifier: "profileVC", sender: self) 
    if let email = emailTextField.text, let password = passwordTextField.text { 
     FIRAuth.auth()?.signIn(withEmail: email, password: password, completion: { (user, error) in 
      if error == nil { 
       print("DAW: User Created") 
      } else { 
       FIRAuth.auth()?.createUser(withEmail: email, password: password, completion: { (user, error) in 
      if error != nil { 
        print ("DAW: User failed to authenticate with Firebase") 
      } else { 
        print ("DAW: Successfully") 
       if let user = user { 
        self.completeSignIn(id: user.uid) 
         } 
        } 
       }) 
      } 
     }) 
    } 
} 
+0

それは、ユーザーがログインしようとする前に、あなたはセグエを実行しているように見えますが、self.completeSignIn(ID:user.uid)の後に行うセグエを移動したい。自己の – chickenparm

+0

暗黙的に使用、自己を使用してください。私は自分自身を使用しましたが、決して自分自身を使用しませんでした。 –

+0

私もゼロを試しましたが、上記と同じエラーがあります –

答えて

0
@IBAction func loginRegisterBtnPressed(_ sender: AnyObject) { 

    if let email = emailTextField.text, let password = passwordTextField.text { 
     if email != "" && password != ""{ 
      FIRAuth.auth()?.signIn(withEmail: email, password: password, completion: { (user, error) in 
      if error == nil { 
       performSegue(withIdentifier: "profileVC", sender: self) 
      } else { 
       FIRAuth.auth()?.createUser(withEmail: email, password: password, completion: { (user, error) in 
        if error != nil { 
         print ("DAW: User failed to authenticate with Firebase") 
        } else { 
         print ("DAW: Successfully") 
         if let user = user { 
          self.completeSignIn(id: user.uid) 
         } 
        } 
       }) 
      } 
     }) 
     } 
    } 
} 
関連する問題