2016-09-07 8 views
1

これはコントローラのループです。 Angular JSを使ってチャートを作成して表示しようとしていますが、できません。同じグラフが私のビューで繰り返され、ページの更新時にグラフが変化します。 JSONの "Options"と "Votes"というレスポンスが必要です。私は何の間違いをしていますか?同じグラフが私のビューで繰り返され、ページのリフレッシュ時にグラフが変化します

for (var i = 0; i < response.response.options.length;i++) { 
     labels.push(response.response.options[i].options); 
        data.push(response.response.options[i].votes); 
        $scope.labels = labels; 
        $scope.data = [ 
         data   
        ]; 

これはJSONです。私は複数の呼び出しを持っているので、このような複数のJSONはAPIから呼び出されます。

{ 
    "response": { 
    "poll": { 
     "id": "17", 
     "story_id": "28346", 
     "user_id": "32425", 
     "question": "Who's your favorite actor?", 
     "status": "1", 
     "docs": "1473121969" 
    }, 
    "options": [ 
     { 
     "id": "59", 
     "options": "1. Hamza Ali Abbasi", 
     "image_url": "31xjr2a6f838gwqkw68p.png", 
     "doc": "1473121970", 
     "votes": "3" 
     }, 
     { 
     "id": "60", 
     "options": "2. Emmad Irfani", 
     "image_url": "w9yhbtlr39pzn9d9bijf.png", 
     "doc": "1473121970" 
     }, 
     { 
     "id": "61", 
     "options": "3. Shahbaz Shigri", 
     "image_url": "hxnbem90wtlo7eb8tuew.png", 
     "doc": "1473122087" 
     }, 
     { 
     "id": "62", 
     "options": "4. Fawad Khan", 
     "image_url": "f9q6ud83bjt8ateazzzs.png", 
     "doc": "1473122111" 
     } 
    ] 
    } 
} 

答えて

0

私はあなたはそれが動作していない、そしてそれはあなたの「データ」アレイとすることができる理由で、で取得しているか知っていると思います。ここでは、それはあなたが欲しい情報を作業して表示していjsfiddleです:あなたがあなたの元のコード内のオブジェクトのコンソール出力を見れば

https://jsfiddle.net/jwb9acqL/

、出力されました:

[labels: Array[4], data: Array[1]] 

データの「票」が何らかの理由で別のサブアレイに入れられた場合:

$scope.data = [ 
        data   
       ]; 

私はその余分な配列を削除しました。それが役立つかどうかを見てください。そうでない場合は、グラフコードを投稿する必要があると言います。

関連する問題