如何使用异步Swift Firebase函数?
所以基本上我有一个函数,它连接到Firebase,以字符串的形式获取数据,并返回一个字符串,至少我认为是这样 这个问题非常简单,有点愚蠢,但是我如何在不同的线程或内核中调用这个方法呢。对不起,我还不知道这些术语。我正在努力 而且,我认为它不会返回我需要的字符串,那么我该如何实现呢 另外,这不是重复的,因为如果你看所有这些类型的问题,我没有找到一个调用实际方法的问题如何使用异步Swift Firebase函数?,swift,asynchronous,firebase,firebase-realtime-database,dispatch,Swift,Asynchronous,Firebase,Firebase Realtime Database,Dispatch,所以基本上我有一个函数,它连接到Firebase,以字符串的形式获取数据,并返回一个字符串,至少我认为是这样 这个问题非常简单,有点愚蠢,但是我如何在不同的线程或内核中调用这个方法呢。对不起,我还不知道这些术语。我正在努力 而且,我认为它不会返回我需要的字符串,那么我该如何实现呢 另外,这不是重复的,因为如果你看所有这些类型的问题,我没有找到一个调用实际方法的问题 typealias someting = (String?) -> Void func getOpposingUser
typealias someting = (String?) -> Void
func getOpposingUsername( _ index: Int, completionHandler: @escaping someting) {
var opposingUser: String = ""
self.datRef.child("Bets").child(self.tieBetToUser[index]).observe(.childAdded, with: { snapshot in
guard let dict = snapshot.value as? [String: AnyHashable] else {
return
}
opposingUser = dict["OpposingUsername"] as! String
if opposingUser.isEmpty {
completionHandler(nil)
} else {
completionHandler(opposingUser)
}
})
}
更改线程类似于DispatchQueue.main.async{您的代码}这是关于GCD的文档 下面是一个返回字符串的函数示例
func stringReturn() -> String {
let aString = "a string"
return aString
}