Доступ к значениям массива вне тела или области видимости в swift - PullRequest
1 голос
/ 22 июня 2019

Я объявил массив и позже присвоил ему значения.Однако, когда я пытаюсь получить доступ к нему в том же viewcontroller, значения не там.есть ли способ сделать значения массива доступными вне замыканий

func loadReviews(){
    Firestore.firestore().collection("BusinessReview").whereField("BusinessID", isEqualTo: businessID).limit(to: 3).getDocuments { (querySnapShot, err) in
        if let err = err {
            print("error\(err)") 
        } else {
            for document in querySnapShot!.documents { 
                self.reviewsArr.append(document.data()["Review"] as! String) 
            }
        }
    } 
    dump(reviewsArr) 
}

Хотя массив заполняется после кода добавления, как только я делаю дамп позже, его пустым.как мне обойти это?

1 Ответ

0 голосов
/ 22 июня 2019

Вызов firebase является асинхронным, поэтому вам необходимо перезагрузить таблицу внутри завершения

for document in querySnapShot!.documents { 
    self.reviewsArr.append(document.data()["Review"] as! String) 
}
self.tableView.reloadData()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...