2016-04-21 83 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對象。如果你只在一個控制器中使用某些東西,我會說最好將信息保存在控制器中。

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

相關問題