Экран регистрации не будет успешно переходить к новому контроллеру представления. - PullRequest
0 голосов
/ 07 июня 2018

Добрый день.Я пытаюсь реализовать функцию регистрации в моем приложении.Когда я успешно зарегистрируюсь, он перейдет к контроллеру основного представления, однако он просто перенаправит обратно на контроллер просмотра регистра.Может кто-нибудь, пожалуйста, дайте мне знать, что я делаю неправильно?

Auth.auth (). CreateUser (withEmail: электронная почта, пароль: пароль) {(пользователь, ошибка) в

        if error != nil {
            print("error")
            return
        }else{
            let MainView = UINavigationController(rootViewController: mainViewController())
            self.present(MainView, animated: true, completion: nil)
        }
        self.defaults.set(false, forKey: "user is logged in")

        let userID = Auth.auth().currentUser!.uid

        let ref = Database.database().reference(fromURL: "https://odd-jobs-llc-f854a.firebaseio.com/")
        let usersReference = ref.child("users").child(userID)
        let values = ["first name": firstname, "last name": lastname, "phone number": phonenumber,
        "email": email]
        usersReference.updateChildValues(values, withCompletionBlock: { (err, ref) in

            if err != nil {
                print("err")
                return
            }

            self.dismiss(animated: true, completion: nil)
        })


    }
}

1 Ответ

0 голосов
/ 08 июня 2018

Это будет представлять VC

 let MainView = UINavigationController(rootViewController: mainViewController())
 self.present(MainView, animated: true, completion: nil)

, и это

 self.dismiss(animated: true, completion: nil)

отклонит его, вы можете иметь в виду что-то вроде этого

Auth.auth().createUser(withEmail: email, password: password) { (User, error) in

        if error != nil {
            print("error")
            return
        } 

        self.defaults.set(false, forKey: "user is logged in")

        let userID = Auth.auth().currentUser!.uid

        let ref = Database.database().reference(fromURL: "https://odd-jobs-llc-f854a.firebaseio.com/")
        let usersReference = ref.child("users").child(userID)
        let values = ["first name": firstname, "last name": lastname, "phone number": phonenumber,
        "email": email]
        usersReference.updateChildValues(values, withCompletionBlock: { (err, ref) in

            if err != nil {
                print("err")
                return
            }

             let MainView = UINavigationController(rootViewController: mainViewController())
             self.present(MainView, animated: true, completion: nil)


        })


    }
}
...