Это немного сбивает с толку относительно проблемы. Я думаю, что вы путаете асинхронный характер.
В вашем ngonInit () вы вызываете createGroup
как часть обычного метода, а не как часть обработчика результатов.
ngOnInit(): void {
let exerciseTest;
this.db
.collection('availableExercises')
.valueChanges()
.subscribe(
res => {
console.log(res);
// saving the response to a component local variable
this.exercises = res;
// I am calling this.createGroup() inside the result handler; not outside of it.
// I'm also passing in the response.
this.createGroup()
}
)
}
Теперь ваша функция создания группы должна иметь доступ к this.exercises.
В исходной реализации this.createGroup()
наиболее вероятно вызывалось до запуска обработчика результатов; и как таковые this.exercises были бы не определены. Но это трудно сказать, поскольку ни в каком месте исходного кода this.exercises
не определено или не дано значение.