Я пытаюсь сделать индикатор выполнения, который обновляется по мере завершения большего количества задач. Однако компонент не может получить доступ к свойству, поскольку он не определен.Ember «this» undefined in component
Я ввел службу, и я пытаюсь создать вычисленное свойство из свойства службы. Однако это всегда не определено, если только в отладке.
import Ember from 'ember';
export default Ember.Component.extend({
progress: 0,
game: Ember.inject.service(),
events: this.get("game.challenges")
});
Как это быть определено в приведенном выше коде? Как это не связано с какой-либо областью?
Я бросил в отладчике, как это:
init() {
debugger
},
Если я выйти из this.get("game")
возвращает ожидаемое значение.
Я также попытался включить службу внутри init, но все еще не определено. Я попытался вывести это, и это тоже не определено.
Есть ли способ заставить службу решить, прежде чем двигаться дальше? Я пробовал использовать различные крючки компонентов, но они, похоже, ничего не изменили.
Возможный дубликат [столпотворение экспортирует "это" как неопределенные в Ember вычислен собственности] (HTTP: // StackOverflow. com/questions/31283175/babel-is-exporting-this-as-undefined-in-ember-computed-property) –