Typescript 如何在angular 2中调用http调用?
您能告诉我如何在angular 2中调用http调用并使用ng repeat显示数据吗 这是我的密码 为了使用它,您需要它“注入”Typescript 如何在angular 2中调用http调用?,typescript,angular,Typescript,Angular,您能告诉我如何在angular 2中调用http调用并使用ng repeat显示数据吗 这是我的密码 为了使用它,您需要它“注入”Http constructor(private http: Http){ http.get('https://...') .map(response => { response.json(); }) .subscribe(value => { this.data = value;}) } 为了使用它,您需要它“注入”Http
Http
constructor(private http: Http){
http.get('https://...')
.map(response => { response.json(); })
.subscribe(value => { this.data = value;})
}
为了使用它,您需要它“注入”Http
constructor(private http: Http){
http.get('https://...')
.map(response => { response.json(); })
.subscribe(value => { this.data = value;})
}
首先,需要将
Http
实例注入组件:
export class AppComponent {
toDoModel;
constructor(private _router:Router,private http:Http) {
this.http.get('data.json')
.map(res => res.json())
}
}
然后,有两种方法可以在ngFor
中显示数据:
- 通过订阅
方法返回的可观察对象get
@Component({ template: ` <ul> <li *ngFor="#elt of elements">{{elt.name}}</li> </ul> ` }) export class AppComponent { toDoModel; constructor(private _router:Router,private http:Http) { this.http.get('data.json') .map(res => res.json()) .subscribe(data => { this.elements = data; }); } }
HTTP\u提供程序
:
import {bootstrap} from 'angular2/platform/browser';
import {HTTP_PROVIDERS} from 'angular2/http';
import {AppComponent} from './app.component';
bootstrap(AppComponent, [ HTTP_PROVIDERS ]);
下面是相应的plunkr:
您还可以将HTTP处理放入专用服务中,如下所述:
Http
实例注入组件:
export class AppComponent {
toDoModel;
constructor(private _router:Router,private http:Http) {
this.http.get('data.json')
.map(res => res.json())
}
}
然后,有两种方法可以在ngFor
中显示数据:
- 通过订阅
方法返回的可观察对象get
@Component({ template: ` <ul> <li *ngFor="#elt of elements">{{elt.name}}</li> </ul> ` }) export class AppComponent { toDoModel; constructor(private _router:Router,private http:Http) { this.http.get('data.json') .map(res => res.json()) .subscribe(data => { this.elements = data; }); } }
HTTP\u提供程序
:
import {bootstrap} from 'angular2/platform/browser';
import {HTTP_PROVIDERS} from 'angular2/http';
import {AppComponent} from './app.component';
bootstrap(AppComponent, [ HTTP_PROVIDERS ]);
下面是相应的plunkr:
您还可以将HTTP处理放入专用服务中,如下所述:
http.dev.js
文件,并添加import'rxjs/add/operator/map'
在script.js
文件中。有关更多详细信息,请参阅此答案:@ThierryTemplier谢谢!对我来说,订阅是关键。我没有订阅结果,因为我不在乎结果——我只是想开枪然后忘记。但如果没有订阅,它永远不会启动!请分享plunkerRegarding您的plunkr,您忘记在HTML文件中添加http.dev.js
文件,并添加import'rxjs/add/operator/map'
在script.js
文件中。有关更多详细信息,请参阅此答案:@ThierryTemplier谢谢!对我来说,订阅是关键。我没有订阅结果,因为我不在乎结果——我只是想开枪然后忘记。但如果没有订阅,它永远不会启动!