2016-06-21 1 views
0

バージョン2.0.0-rc.2を実行するAngular2アプリがあります。Angular2 RC "NgForは、配列などのIterablesへのバインディングのみをサポートしています。"エラー

サービスで以下のhttp getコールを使用すると、「NgForは配列などのIterablesへのバインディングしかサポートしていません」というエラーが表示されます。ポストの下部にエラーの詳細があります。 私は.net Web Apiエンドポイントを呼び出しています。 サービスがjsonファイルをポイントすると、アプリケーションは期待どおりに動作します。 誰にもアイデアはありますか?

これは、ここで

getTiles(): Observable<ITile[]> {  
    return this._http.get(this._tileUrl) 
     .map((response: Response) => <ITile[]> response.json()) 
     .do(data => console.log('All: ' + JSON.stringify(data))) 
     .catch(this.handleError); 
} 

は、エラーの詳細...

「[{ "タイルID" である...サービスコールである:2119799133、 "タイトル": " "TileId":2132951783 "タイトル": "ミルクティー& パール"}、{"TileId":2139685810、 "タイトル": "}} 'タイプ' string 'の古い医者バトラー " 。 は、配列などのIterablesへのバインドのみをサポートしています。

このサービスを使用するコンポーネントは次のようにサブスクライブ...

ngOnInit(): void { 
     this._TilesService.getTiles() 
       .subscribe(
        tiles => this.tiles = tiles, 
        error => this.errorMessage = <any>error); 
} 

そして、このHTMLが含まれています...あなたのアイデアを

<div *ngFor="let t of tiles"> 
    <tile [tile]='t'></tile> 
</div> 
+1

投稿してください。 – PeteGO

+0

そして関連するコンポーネントコード。 –

+0

これはすべて適切にフォーマットされた質問の中にあるべきです。 –

答えて

0

感謝。私はこの問題を解決しました。それはウェブAPIの側にあった。コンテンツは手動でシリアル化されていましたが、Web Apiがこれを処理するため、コンテンツは必要ありません。これにより、返されたコンテンツのフォーマットが正しく行われませんでした。この行は削除されました...

var json = JsonConvert.SerializeObject(tiles); 
関連する問題