2017-03-29 2 views
-2

기본적으로 Firebase에 연결하고 문자열 형식의 데이터를 가져 와서 문자열을 반환하는 함수가 있습니다 (적어도 생각합니다).비동기 Swift Firebase 기능을 사용하는 방법은 무엇입니까?

이 질문은 매우 간단하고 어리석은 질문이지만 다른 스레드 또는 코어에서이 메서드를 호출하는 방법은 무엇입니까? 미안하지만 아직 조건을 모른다. 나는 노력하고있어.

또한 나는 그것이 필요한 문자열을 반환한다고 생각하지 않습니다.

또한이 두 가지 유형의 질문을 모두 살펴보면 실제 메소드를 호출하지 못했기 때문에 중복되지 않습니다.

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) 
      } 




     }) 


    } 

답변

0

변경 스레드가 여기 DispatchQueue.main.async {your code} 같은 것을 GCD Dispatch에 대한 설명서입니다 것입니다. 여기

는 문자열을 리턴하는 함수의 예이다

func stringReturn() -> String { 
    let aString = "a string" 
    return aString 
} 
관련 문제