Когда появится пользовательский интерфейс, snapshot listen снова извлекает данные

# #swift #xcode #firebase #google-cloud-firestore #snapshot

Вопрос:

Я использую firebase в своем приложении и извлекаю данные с помощью прослушивателя моментальных снимков. Хотя в базе данных есть только одни данные, каждый раз, когда появляется пользовательский интерфейс, он снова извлекает данные и отображает их в таблице. Я новичок в firebase и swift. Что я упускаю?

Вот мой код прослушивателя моментальных снимков:

     todosCollectionRef.getDocuments{  (snapshot ,error) in
        if let error = error {
            debugPrint("error: (error.localizedDescription)")
        } else{
            guard let snap = snapshot else {return}
            for document in snap.documents{
                let data = document.data()
                
                let todo = data[todo_title] as? String ?? "misafir"
                let addingDate = data[todo_addingDate] as? Date ?? Date()
                let emoji = data[todo_emoji] as? String ?? "emoji"
                let isCompleted = data[todo_isCompleted] as? Bool ?? false
                let documentId = document.documentID
                let newTodo = toDo(todo: todo, documentId: documentId, emoji: emoji, addingDate: addingDate, isCompleted: isCompleted)
                self.todos.append(newTodo)
     
            }
     
            self.tableView.reloadData()
            
        }
    }
 

И в этом заключается ошибка