还是angularjs2入门1-文件结构分析的源码,将app名称tutorial-step6-http
The@H_404_13@HttpModuleisnota core Angular module. called@angular/http
需要在app.module.ts 上加上
import{HttpModule}from'@angular/http';
还需要
-
imports:[
- HttpModule,
- ],
我们伪造一个web服务器
// Imports for loading & configuring the in-memory web api
import { InMemoryWebApiModule } from 'angular-in-memory-web-api';
import { InMemoryDataService } from './in-memory-data.service';
import { InMemoryDataService } from './in-memory-data.service';
导入InMemoryWebApiModule并将其加入到模块的imports数组。 InMemoryWebApiModule将Http客户端默认的后端服务 — 这是一个辅助服务,负责与远程服务器对话 — 替换成了内存 Web API服务
InMemoryWebApiModule.forRoot(InMemoryDataService),
利用toPromise操作符把Observable直接转换成Promise对象
import 'rxjs/add/operator/toPromise';
我们把
getHeroes()
换成用 HTTP
getHeroes(): Promise<Hero[]> { return this.http.get(this.heroesUrl) .toPromise() .then(response => response.json().data as Hero[]) .catch(this.handleError); }