Я нашел этот пример кода в учебнике :
getRandomQuote() {
this.http.get('http://localhost:3001/api/random-quote')
.map(res => res.text())
.subscribe(
data => this.randomQuote = data,
err => this.logError(err),
() => console.log('Random Quote Complete')
);
}
Но, пытаясь использовать его, я получаю только TypeError: this.http.get(...).map is not a function in [null]
:
getChannels():Promise<Channel> {
return this.http.get('...')
.map(function (response:Response) {
...
}).toPromise();
}
Мой компилятор Typescript сообщает мне, что эти методы доступны, но при проверке возвращаемого значения http.get()
они отсутствуют.
Я использовал package.json текущего руководства для angualar2:
"dependencies": {
"angular2": "2.0.0-beta.0",
"systemjs": "0.19.6",
"es6-promise": "^3.0.2",
"es6-shim": "^0.33.3",
"reflect-metadata": "0.1.2",
"rxjs": "5.0.0-beta.0",
"zone.js": "0.5.10"
},
...
<script src="node_modules/angular2/bundles/angular2.dev.js"></script>
<script src="node_modules/angular2/bundles/http.dev.js"></script>
Любые идеи, что я могу ошибиться на этом этапе?