Есть на локале отдельный json файл типа:
[
{
"name": "Release One",
"source": { "pointer": "/data/attributes/first-name" },
"songs": "Release One Songs",
"year": "2010"
},
{
"name": "Release Two",
"source": { "pointer": "/data/attributes/first-name" },
"songs": "Release Two Songs",
"year": "2011"
},
{
"name": "Release Three",
"source": { "pointer": "/data/attributes/first-name" },
"songs": "Release Three Songs",
"year": "2014"
}
]
Каким образом данные загрузить во view приложения Angular2?
Перепробовал кучу тюториалов, что-то устарело и не работает, что-то просто вызывает ошибки из-за того, что стартовый проект построен по-разному.
releases.service.tsimport { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import 'rxjs/Rx';
import 'rxjs/add/operator/map';
@Injectable()
export class ReleasesService {
constructor(private http: Http){
}
getReleases(){
return this.http.request('./releases/releases.json')
.map(res => res.json());
}
getData(res: Response){
}
}
releases.component.html<div class="releases-component">
Releases Component starts here!
<div *ngFor="let release of releases">
<h3>Name: {{release.name}}</h3>
<h3>Name: {{release.year}}</h3>
</div>
</div>
Во view ничего не отображается. В инспекторе вместо ожидаемых объектов:
<!--template bindings={
"ng-reflect-ng-for-of": null
}-->
releases.component.tsimport { Component, OnInit } from '@angular/core';
import { ReleasesService } from './releases.service';
@Component({
selector: 'releases',
templateUrl: './releases.component.html',
styleUrls: ['./releases.component.scss']
})
export class ReleasesComponent implements OnInit {
constructor(){
}
ngOnInit(){
}
}