В моем приложении я пытаюсь обновить массив. Сначала я получаю данные из базы данных и добавляю их в массив, а другим способом хочу использовать этот массив. Но массив не обновляется.
Если я использую мой массив exerciseList
в DOM, в нем есть данные, но в функции getExercises
длина массива по-прежнему равна 0. Это похоже на то, как я запускаю метод перед добавлением данных в массив или что-то в этом роде.
Любая идея, почему это не работает?
data: () => ({
exerciseList: []
});
created() {
this.getDataBaseCollection("Exercise", this.exerciseList); // array gets information here
}
mounted() {
this.getExercises();
},
methods: {
getDataBaseCollection: function (CollectionName, list) {
db.collection(CollectionName).onSnapshot(snapshot => {
snapshot.forEach(doc => {
list.push(doc.data());
});
});
},
getExercises: function () {
console.log(this.exerciseList.length); // length is 0 ?? array seems empty
}
},