Ich bin fest. Irgendwie kann ich das nicht funktionieren. Ich versuche, Daten für eine Web-App aus einer (noch lokalen) JSON-Datei zu laden. Ein Abschnitt dieses JSON enthält Farben und sieht wie folgt aus: getJSON und Winkelmodell
{
"colors" : {
"1" : "yellow",
"2" : "green",
"3" : "red"
},
"stuff : {...}
}
Ich habe eine sehr einfache HTML-Datei mit einigen Kopf Sachen haben. Scripte werden in die Kopfzeile geladen. Der interessante Teil sieht wie folgt aus:
<ul ng-controller="ColorController">
<li ng-repeat="(key,value) in colors" value="{{key}}">
{{key}}: {{value}}
</li>
</ul>
Die entsprechende Javascript:
var colors = {
"1": "lyellow",
"2": "lgreen",
"3": "lred"
};
var app = angular.module('test', []);
app.controller('ColorController', function($scope){
$scope.colors = colors;
$.getJSON('data.json')
.then(function(res){
$scope.colors = res.colors;
});
})
ich mit einer lokalen Version von Farben zunächst versucht, damit die Variable Farben. Das hat gut funktioniert und die gewünschte Leistung gebracht. Ich habe versucht, zu einem lokal gespeicherten JSON zu wechseln. console.log zeigte eine korrekte Analyse. Auf einer Debug-Konsole Farben und Res.Farben sieht gleich aus. Aber die Liste auf der Seite wird nicht aktualisiert.
Ich denke, es ist etwas mit dem Timing, aber ich bin mir nicht sicher. Könnte mir jemand in die richtige Richtung zeigen?
Können Sie '.done' anstelle von' 'then'' versuchen? –
verwenden '$ http.get' anstelle von' jQuery' ajax –