В приведенном ниже коде,
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Dashboard</title>
<!-- Libs -->
<script src="angular.js"></script>
<script>
var countryApp = angular.module('countryApp', []);
countryApp.controller('CountryCtrl', function ($scope, $http){
$http.get('country_codes.json').success(function(data) {
$scope.countries = data;
});
});
</script>
</head>
<body ng-controller="CountryCtrl">
</body>
</html>
/* country_codes.json */
[
{
"code": "AD",
"name": "Andorra",
"population": "84000"
},
{
"code": "AE",
"name": "United Arab Emirates",
"population": "4975593"
}
]
По отладке я не вижу никакой ошибки, и функции обратного вызова не выполняются.
Почему обратный вызов контроллера не выполняется?
Добавьте функцию ошибки, и вы увидите сведения об ошибке:
<script>
var countryApp = angular.module('countryApp', []);
countryApp.controller('CountryCtrl', function ($scope, $http){
$http.get('country_codes.json')
.then(function(data) {$scope.countries = data;}
,
function(data) {console.log("error: "+data)});
});
</script>
измените json на:
{
"countries": [
{
"code": "AD",
"name": "Andorra",
"population": "84000"
},
{
"code": "AE",
"name": "United Arab Emirates",
"population": "4975593"
}
]
}
После добавления ng-app = "countryApp" в тэг html его работы для меня.
ng-app
?
.error
, а не только.success
.