Использование arrayUnion вызывает утечку памяти - PullRequest
0 голосов
/ 09 июля 2020

Я пытаюсь загрузить массив состояний в массив в Firestore, но выдает предупреждение «Невозможно выполнить обновление в отключенном состоянии». и когда я go в базе данных, я вижу, что данные не были сохранены.

const dbh = firebase.firestore();
        this.state.players.map(player => {
        if(player.Present === true){
            this.setState({
                enrolledPlayersList: [...this.state.enrolledPlayersList, player.id]
            })
        }
    })
    const finalList = this.state.enrolledPlayersList
    dbh.collection("Groups").doc(this.state.group)
    .collection('Enrolled').doc('ids').update({
         players: firebase.firestore.FieldValue.arrayUnion(finalList)
    })

1 Ответ

1 голос
/ 12 июля 2020

Я решил эту проблему, разместив свое подключение к базе данных в функции componentDidMount () следующим образом:

componentDidMount(){
const dbh = firebase.firestore();
    this.state.players.map(player => {
    if(player.Present === true){
        this.setState({
            enrolledPlayersList: [...this.state.enrolledPlayersList, player.id]
        })
    }
})
}
...