ios - Swift Parse - Method doesn't stop executing -
i have following code query parse class , return result set. after returning results, pass array function check if elements set or not.
i used print statements on code try , debug, , found query executes , within
if error == nil
i getting results array empty. hence when pass function below, never gets out of it:
func emailorusernameistaken(results: [pfobject])->int { /*check if username taken or if email taken*/ var preferencetaken: int = 0 if(results[0]["email"] as! string != "" && results[0]["email"] as! string == self.userobject.email!) { preferencetaken = 1 }else if(results[0]["appusername"] as! string != "" && results[0]["appusername"] as! string == self.userobject.username!){ preferencetaken = 2 } return preferencetaken }
and code query taking place:
let query = pfquery.orquerywithsubqueries([usernameinputcheck, emailinputcheck]) query.findobjectsinbackgroundwithblock { (results: [pfobject]?, error: nserror?) -> void in if error == nil { print("before") let checkresult = self.emailorusernameistaken(results!) print(results) print("after") } }
as output print statements above, in console:
before optional([]) after
can me find out issue. surprised why not working.
if results
empty, results[0]["email"] as! string
should crash because force unwrapping nil
optional value. story telling not consistent.
if actual problem empty results - have provide details queries , why expect there populated result.
Comments
Post a Comment