栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

从Firebase数据库异步方法返回值

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

从Firebase数据库异步方法返回值

您必须自己使用异步完成处理程序,并验证是否存在Internet连接:

func checkUsernameAlreadyTaken(username: String, completionHandler: (Bool) -> ()) {    databaseRef.child("usernames").child("(username)").observe(.value, with: { (snapshot) in        print(username)        if snapshot.exists() { completionHandler(false)        } else { let connectedRef = FIRDatabase.database().reference(withPath: ".info/connected") connectedRef.observe(.value, with: { snapshot in     if let connected = snapshot.value as? Bool, connected {         completionHandler(true)     } else {         completionHandler(false)         // Show a popup with the description         let alert = UIalertController(title: NSLocalizedString("No connection", comment: "Title Internet connection error"), message: NSLocalizedString("No internet connection, please go online", comment: "Internet connection error saving/retriving data in Firebase Database"), preferredStyle: .alert)         let defaultOkAction = UIalertAction(title: NSLocalizedString("No internet connection, please go online", comment: "Internet connection error saving/retriving data in Firebase Database"), style: .default, handler: nil)         alert.addAction(defaultOkAction)         self.present(alert, animated: true, completion: nil)     } })        }    })}

然后,使用以下命令调用方法:

checkIfUserExists(username: text, completionHandler: { (value) in    // ...})


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/371475.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号