Maintenant, j'ai une page initiale où j'ai trois liens. Une fois que vous cliquez sur le dernier lien «amis», le composant amis approprié est lancé. Là-dedans, je veux récupérer / obtenir la liste de mes amis dans le fichier friends.json. Jusqu'à présent, tout fonctionne bien. Mais je suis toujours un novice pour le service HTTP d'angular2 utilisant le concept d'observables, de carte et d'abonnement de RxJs. J'ai essayé de le comprendre et lu quelques articles, mais tant que je n'aurai pas commencé un travail pratique, je ne comprendrai pas ces concepts correctement.
Ici, j'ai déjà fait plnkr qui fonctionne sauf le travail lié à HTTP.
myfriends.ts
import {Component,View,CORE_DIRECTIVES} from 'angular2/core';
import {Http, Response,HTTP_PROVIDERS} from 'angular2/http';
import 'rxjs/Rx';
@Component({
template: `
<h1>My Friends</h1>
<ul>
<li *ngFor="#frnd of result">
{{frnd.name}} is {{frnd.age}} years old.
</li>
</ul>
`,
directive:[CORE_DIRECTIVES]
})
export class FriendsList{
result:Array<Object>;
constructor(http: Http) {
console.log("Friends are being called");
// below code is new for me. So please show me correct way how to do it and please explain about .map and .subscribe functions and observable pattern.
this.result = http.get('friends.json')
.map(response => response.json())
.subscribe(result => this.result =result.json());
//Note : I want to fetch data into result object and display it through ngFor.
}
}
Veuillez guider et expliquer correctement. Je sais que ce sera très bénéfique pour de nombreux nouveaux développeurs.