Теперь у меня есть начальная страница, где у меня есть три ссылки. После того, как вы нажмете на последнюю ссылку «друзья», начнут инициироваться соответствующие друзья. Там, Я хочу получить/получить список моих друзей, занятых в файле friends.json. До сих пор все работает нормально. Но я все еще новичок в HTTP-сервисе angular2, используя концепцию наблюдаемых, карт, подписки RxJs. Я попытался понять это и прочитать несколько статей, но пока я не получу практическую работу, я не буду правильно понимать эти понятия.Angular2 http.get(), map(), subscribe() и наблюдаемый шаблон - базовое понимание
Здесь я уже сделал plnkr, который работает, кроме работы, связанной с 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.
}
}
Пожалуйста, руководство и объяснить правильно. Я знаю, что это будет так полезно многим новым разработчикам.
Можете ли вы сделать мой бухнуться рабочий с вашими предложениями? Я пробовал, но не работает. – nyks
здесь вы идете [ваш плункер] (http://plnkr.co/edit/oYFhsMEJFMi7NzGPpvT1?p=preview). Я сменил строки: 21, 23 на myfriends.ts – Abdulrahman
Готово. Дополнительную информацию о подписке() можно найти, отредактировав свой ответ. – nyks