je un fichier "region.json" stocké localement comme ceci:Angular2 HTTP tapuscrit Json
{
"regionId":1,
"region":"CAN"
},
{
"regionId":2,
"region":"CEN"
}
Je fichier "enviroment app.component.ts" qui, comme ceci:
import {Component, View, CORE_DIRECTIVES, FORM_DIRECTIVES} from "angular2/core";
import {HTTPTestService} from "./http-test.service";
@Component({
selector: 'my-app'
})
@View({
template: `
<table>
<thead>
<th>Region Id</th>
<th>Region</th>
</thead>
<tbody>
<tr *ngFor="#item of myData">
<td>{{item.regionId}}</td>
<td>{{item.Region}}</td>
</tr>
</tbody>
</table>`
})
export class AppComponent {
myData:any;
}
et j'ai fichier « http-test.service.ts » qui ressemblent à:
import {Injectable} from "angular2/core";
import {Http} from "angular2/http";
import 'rxjs/add/operator/map';
import {Headers} from "angular2/http";
import {AppComponent} from "./environment_app.component";
@Injectable()
export class HTTPTestService{
constructor (private _http: Http){}
this.myData = {region:[]};
get("./region.json") {
return this._http.get("./region.json", { headers: headers })
.map(res => res.json())
.subscribe
(
data => {
this.myData = data;
});
}
}
Dans le front-End, je ne suis en mesure d'imprimer l'en-tête de
Je veux récupérer toutes les données JSON
Ce que je fais mal ?? S'il vous plaît, Toute aide appréciée,
Merci d'avance.
Votre chemin doit être lié au dossier de l'application que vos composants contiennent dans 'app/data/region.json'. –
@MaciejCaputa J'ai essayé ce que vous avez dit dans votre commentaire, mais ne fonctionnant toujours pas, les en-têtes ont été imprimés. –
Ne tenez pas compte de mon commentaire précédent, pour une raison quelconque, je suppose que vous avez des erreurs de récupération (vous pouvez vérifier dans la console). Quelle version angulaire vous utilisez? S'il s'agit d'une version finale, alors la sémantique de ngFor a changé et * ngFor = "laisser l'élément de mes données" doit être utilisé à la place. La syntaxe que vous utilisez a été utilisée dans Angular 2.x-beta. –