2

私のサービスは JSON データを取得し、データをコントローラーに正常に返しますが、ng-repeat を使用してキー名を反復処理する際に問題があります。

カテゴリ名なのでキー名を一覧でページに表示したい。

現在、ng-repeat は正しい回数繰り返しますが、キー名は表示されません。

コントローラ:

app.controller('getNav', function(getJSONData, $scope) {
    var path = 'json/navigation';
    getJSONData.async(path).then(function(d) {
        $scope.data = d;    
    });
});

サービス:

app.factory('getJSONData', function($http) {
  var getJSONData = {
    async: function(path) {
      var promise = $http.get(path).then(function (response) {
        return response.data;
      });
      return promise;
    }
  };
  return getJSONData;
});

JSON データ:

{ 
     "data": {
         "category_a": ["a", "b", "c", "d"], 
         "category_b": ["e", "f", "g"], 
         "category_c": ["h", "i", "j"]
     }, 
     "response": "Navigation"
}

意見:

<ul ng-controller="getNav">
   <li data-ng-repeat="(key, value) in data.data">Category name is: {{key}}</li>
</ul>
4

1 に答える 1

5

うまくいけば、将来、同じ問題を抱えている人を助けることができます. 私はこのくそったれに髪を引っ張って一日を無駄にしました。Google Apps エンジンからファイルを分離した後、ファイルが単純な MAMP localhost では機能するが、Google Apps エンジンでは機能しないことを発見しました。

いくつか検索した結果、angular と DJango が {{}} を使用するテンプレート タグが競合していることが原因であることがわかりました。したがって、角度を別のものを使用するように設定するだけで、問題がソートされます。ここを参照してください。

AngularJS と Django - 競合するテンプレート タグ

于 2013-03-16T12:51:59.993 に答える