хотите прочитать json-файл и установить settingsProvider.Угловая 2. Http map subscribe issue
Так я делаю это так:
import {Http} from "angular2/http";
import {Injectable} from "angular2/core";
@Injectable()
export class SettingsProvider{
url: string = "";
constructor(http: Http){
http.request('js/app/config/config.json').map(data => data.json()).subscribe(data => this.url = data.url);
}
getUrl():string {
return this.url;
}
}
Но получил ошибку вроде этого:
Итак, мой первый вопрос - почему так?
Второй вопрос:
Когда я делаю так:
http.request('js/app/config/config.json').subscribe(data => {
this.url = data.json().url;
});
это точки не в классе, а к примеру подписчика. Почему так? Я думал, что «жирная стрела» -lambda в TypeScript поможет нам избавиться от этого странного закрытия.
функция
Это помогло с функцией карты, но не решило эту проблему ... «эта» внутри лямбда все еще указывает на подписчика .. а не на класса SettingsProvider. Почему так? – korovaisdead
Такая же проблема: нашли ли вы решение? –