私はレシピ用のAPIからデータを取得していますが、既にうまく機能しているレシピのリストを持っていますが、今は単一のレシピの詳細を呼び出すようになりました(1オブジェクト )。以下の私のコンソールログは、JSONの外観です。私がフロントエンドに表示することができないものがあれば、できる限り手伝ってください。単一配列のJSONオブジェクトは印刷されません(Ionic 2)
活字体
details: any;
loadDetails() {
if (this.details) {
return Promise.resolve(this.details);
}
return new Promise(resolve => {
this.http.get('http://api.yummly.com/v1/api/recipe/Crustless-Ham-Savory-Bake-2005439?_app_id=//////&_app_key=/////')
.map(res => res.json())
.subscribe(data => {
console.log(data);
this.details = data;
resolve(this.details);
});
});
}
HTML
<ion-content>
<ion-list>
<ion-item>
<h1>{{details.id}}</h1>
</ion-item>
</ion-list>
</ion-content>
Pagename.ts
@Component({
selector: 'page-details',
templateUrl: 'details.html',
providers: [ApiAuthentication]
})
export class DetailsPage {
public api: any;
constructor(public navCtrl: NavController, public navParams: NavParams, public apiAuthentication: ApiAuthentication) {
this.loadRecipes();
}
ionViewDidLoad() {
console.log('ionViewDidLoad DetailsPage');
}
loadRecipes(){
this.apiAuthentication.loadDetails()
.then(data => {
this.api = data;
});
}
}
返されるオブジェクトのどこにでも説明は表示されません。 IDが印刷されているかどうかを確認するためにIDを表示するにはキーが必要です –
@AniruddhaDas IDに変更したことを申し訳ありません(他の値を混乱させていました) * – BA1995
@ BA1995。これは古典的なasync値のケースです:あなたのテンプレートは 'details.id'にアクセスしようとします** **' details'は実際に定義されています(非同期のコールドの結果であるためすぐに割り当てられません)。あなたのテンプレートで '{{details?.id}}'を試してください。 – AngularChef