Dostaję dane moje JSON z serwera, ale problem pojawia się, gdy próbuję wyświetlić go na mojej stronie przy użyciu dyrektywy ng-repeat.
Oto moje ciało zawartość HTML, gdzie 'mydata' (array JSON) jest pokazany poprawnie jak tylko $ http.get() sposób otrzymuje żądane dane, ale ng-powtórzyć nie jest wykaz elementów tablicy:
<body ng-app="myapp">
<div ng-controller="MyController" >
Data from server: {{ mydata }}
</div>
<hr>
<ul ng-controller="MyController as controller">
<li ng-repeat="data in controller.mydata">
{{ data }}
</li>
</ul>
</body>
A oto kod JavaScript:
var URI = 'http://my_service_uri/';
angular.module("myapp", [])
.controller("MyController", function($scope, $http) {
$scope.mydata = [];
$http.get(URI)
.then(function(result) {
$scope.mydata = result.data;
});
});
Dziękuję za odpowiedź, działa idealnie teraz. Widzę, co robiłem źle, i dziękuję za radę, trzymam się jednej metody publikowania danych widoku, albo kontroler jako albo $ zasięg. – charliebrownie
Użyłem tego podejścia bez powodzenia, aż w końcu użyłem '$ scope. $ Apply();' po którym spełniono ng-repeat. – ThisClark