Ich fühle mich wie etwas hier fehlt. Ich habe einen Dienst, der einige Daten ergreift. Ich wandle es in ein Versprechen um und versuche dann, die Daten in einer separaten Methode zu bearbeiten.Angular 2. Verlieren Umfang davon in Promise
Wenn es einmal die Methode trifft, verliere ich die Fähigkeit, auf meine Objekte zuzugreifen, auf die ich normalerweise von this.whatever zurückgreifen würde. Wenn ich den gesamten Code aus dem addJobsToTree im then-Block belasse, funktioniert es einwandfrei. Ich kann auch von überall dort auf die Komponente zugreifen. Ich bin mir sicher, dass ich etwas Dummes mache, aber ich kann es nicht herausfinden.
ngOnInit(){
this._scheduleDataService.getSavedScheduleData(this.buildDateStringFromCalendar(),1004)
.toPromise()
.then(this.addToJobsTree);
}
private addToJobsTree(res){
for(let xx of res){
this._sharedService.jobs.push(xx); //Comes back as cannot read _sharedService of null
console.log(this._sharedService.jobs);
}
}
Mögliche Duplikate von [Wie man auf den richtigen \ this \ '/ Kontext innerhalb zugreifen ein Rückruf?] (http://stackoverflow.com/questions/20279484/how-to-access-the-correct-this-context-inside-a-callback) –