Я пытаюсь получить доступ к переменной вне функции, я попытался объявить переменную вне класса, но она продолжает отображать начальное значение в объявлении, а не значение внутри функции, здесь мой код, мне нужно, чтобы получить доступ databaseScoreдоступ к переменной вне функции - swift
func getDatabaseScore()-> Int{
let ref2 = FIRDatabase.database().reference().child("users").child("user").child((user?.uid)!)
ref2.observeSingleEvent(of: .childAdded, with: { (snapshot) in
if var userDict = snapshot.value as? [String:Int] {
//Do not cast print it directly may be score is Int not string
var databaseScore = userDict["score"]
}
})
return databaseScore
}
@ EICaptainv2.0 если это ответ, пожалуйста, добавьте его в таком –
Это знаменитый * асинхронному ловушка *. Невозможно вернуть что-то из метода, содержащего асинхронную задачу. – vadian
Не могли бы вы добавить еще один код на свой вопрос. В частности, покажите закрывающий объект и где вы вызываете 'getDatabaseScore()' –