2016-04-21 8 views
1

angular.module('app',[]) 
 
    .controller('myCtrl',function() { 
 
    this.items = m; 
 
}); 
 

 
var m = { 
 
    "India": "4", 
 
    "England": "2", 
 
    "Brazil": "3", 
 
    "UK": "1", 
 
    "USA": "3", 
 
    "Syria": "2" 
 
};
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.22/angular.min.js"></script> 
 
<body> 
 

 
    <h3>FIFA Mactch Summary:</h3> 
 
    <div ng-app='app' ng-controller="myCtrl"> 
 
     <ul> 
 
      <li ng-repeat="(country,goals) in items">{{country}}: {{goals}}</li> 
 
     </ul> 
 
    </div> 
 

 
</body>

は私のコードです。私が実行すると、Uncaught Error [$ injector:modulerr]エラーが発生します。なぜこのエラーが出るのか分かりません。誰でも私を助けることができますか?本当にそれを感謝します。

答えて

1

DOMのAngularプロパティにアクセスするには、スコープを設定し、コントローラに依存関係として$scopeを注入する必要があります。これは関数引数に配置することで行います。次に、itemsをスコープオブジェクトに割り当てて、DOM内でそのオブジェクトにアクセスする必要があります。それが機能するためには、このように見えるはずです。さらに、コントローラの外に浮かぶmオブジェクトのようなものは避けています。 1つのコントローラーで何かを使用しているだけの場合は、そのコントローラーの内部に情報を保存することをお勧めします。

angular.module('app',[]) 
 
    .controller('myCtrl', ['$scope', function($scope) { 
 
    $scope.items = { 
 
    "India": "4", 
 
    "England": "2", 
 
    "Brazil": "3", 
 
    "UK": "1", 
 
    "USA": "3", 
 
    "Syria": "2" 
 
    }; 
 
}]); 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.22/angular.min.js"></script> 
 
<body> 
 

 
    <h3>FIFA Mactch Summary:</h3> 
 
    <div ng-app='app' ng-controller="myCtrl"> 
 
     <ul> 
 
      <li ng-repeat="(country,goals) in items">{{country}}: {{goals}}</li> 
 
     </ul> 
 
    </div> 
 

 
</body>

+0

ありがとうございました! – PPXia

関連する問題