ios - error with error handling when registering -


when try else statement code brakes , gives me error "use of unresolved identifier 'error". how fix , still have uialert?

        @ibaction func registertapped(_ sender: any) {         print("tapped")         let namec = nametextfield.text         if let email = emailtextfield.text, let pass = passwordtextfield.text, let name = (namec?.capitalized.isempty)! ? nil:namec?.capitalized {             firauth.auth()?.createuser(withemail: email, password: pass, completion: { (user, error) in                 if user != nil {                     //user found                       let interval = nsdate().timeintervalsince1970                     let date = date(timeintervalsince1970: interval)                     let dateformatter = dateformatter()                   dateformatter.dateformat = "dd/mm/yyyy/hh/mm/ss"                     // can change date format whatever wants                     let datestring = dateformatter.string(from: date)                     print(datestring)                     self.refd?.child("users").child((user?.uid)!).setvalue(["email": email, "name": name, "user created": datestring])                     print("user created , added database", email, name, datestring)                     self.performsegue(withidentifier: "registertologin", sender: self)                 }             })         }                 else {             print(error!)             let alert = uialertcontroller(title: "error creating account ", message: "\(error!.localizeddescription)", preferredstyle: uialertcontrollerstyle.alert)             alert.addaction(uialertaction(title: "dismiss", style: uialertactionstyle.default, handler: nil))             self.present(alert, animated: true, completion: nil)         }     } } 

error not within code block, in else statement, error variable doesn't exist, code should probbaly more this:

@ibaction func registertapped(_ sender: any) {         print("tapped")         let namec = nametextfield.text         if let email = emailtextfield.text, let pass = passwordtextfield.text, let name = (namec?.capitalized.isempty)! ? nil:namec?.capitalized {             firauth.auth()?.createuser(withemail: email, password: pass, completion: { (user, error) in                 if error != nil {                     print(error!)                     let alert = uialertcontroller(title: "error creating account ", message: "\(error!.localizeddescription)", preferredstyle: uialertcontrollerstyle.alert)                     alert.addaction(uialertaction(title: "dismiss", style: uialertactionstyle.default, handler: nil))                     self.present(alert, animated: true, completion: nil)                 } else {                     //check if necessary, probbaly if user nil means error variable set something, making check unnecessary.                     if user != nil {                         //user found                         let interval = nsdate().timeintervalsince1970                         let date = date(timeintervalsince1970: interval)                         let dateformatter = dateformatter()                       dateformatter.dateformat = "dd/mm/yyyy/hh/mm/ss"                         // can change date format whatever wants                         let datestring = dateformatter.string(from: date)                         print(datestring)                         self.refd?.child("users").child((user?.uid)!).setvalue(["email": email, "name": name, "user created": datestring])                         print("user created , added database", email, name, datestring)                         self.performsegue(withidentifier: "registertologin", sender: self)                     } else {                         self.showalertview(withtitle: "error", andmessage: "user not found")                     }                 }             })         } else {             self.showalertview(withtitle: "missing input", andmessage: "please make sure email , password fields filled.")         }     } }   func showalertview(withtitle atitle: string, andmessage amessage: string) {     let alertcontroller = uialertcontroller(title: atitle message: amessage, preferredstyle: .alert)     let actionok = uialertaction(title: "ok", style: .default, handler: nil)     alertcontroller.addaction(actionok)      //this part of code needs run on main thread since alert might     //executed form registration code block, might on background thread     dispatchqueue.main.async {         self.presentviewcontroller(alertcontroller, animated: true, completion: nil)     } } 

Comments

Popular posts from this blog

vue.js - Create hooks for automated testing -

php - Vagrant up error - Uncaught Reflection Exception: Class DOMDocument does not exist -

javascript - Create a stacked percentage column -