2016-08-20 1 views
0

Ich habe eine lokale JSON-Datei (data.json), die ich mit angular.fromJson zu analysieren versuchen, die ich nicht sehr vertraute Verwendung habe. Ich habe diesen Beitrag verfolgt. Meine data.json-Datei befindet sich im selben Ordner wie meine app.js-Datei, aber ich erhalte eine 404-Fehlermeldung "localhost: 3000/data.json 404 (Not Found)", was sinnvoll ist, da data.json nicht dabei ist adressieren Sie es bei localhost: 3000/apps/javascripts/data.json. Muss ich eine absolute URL verwenden? Wenn ich jedoch data.json direkt in angular.fromJson platziere, funktioniert es.angular.fromJson Parsing lokale JSON-Datei funktioniert nicht

Dies funktioniert:

$scope.menu = angular.fromJson('{ 
     "name": "Mark", 
     "id": 1, 
     "project": "AMI", 
     "project start": "10/1/2007", 
     "project end": "9/31/2008" 
    }, 
    { 
     "name": "Ann", 
     "id": 2, 
     "project": "CLN", 
     "project start": "10/1/2007", 
     "project end": "9/31/2009" 
    }, 
    { 
     "name": "Mary", 
     "id": 3, 
     "project": "CAN", 
     "project start": "10/1/2008", 
     "project end": "9/31/2011" 
    }'); 
    console.log($scope.menu); 
     }); 

Dies funktioniert nicht:

$http.get('data.json').success(function(data){ 
    $scope.menu = angular.fromJson(data.menu); 
    console.log($scope.menu); 

data.json Skript:

{ 
"menu": [ 
     { 
     "name": "Mark", 
     "id": 1, 
     "project": "AMI", 
     "project start": "10/1/2007", 
     "project end": "9/31/2008" 
    }, 
    { 
     "name": "Ann", 
     "id": 2, 
     "project": "CLN", 
     "project start": "10/1/2007", 
     "project end": "9/31/2009" 
    }, 
    { 
     "name": "Mary", 
     "id": 3, 
     "project": "CAN", 
     "project start": "10/1/2008", 
     "project end": "9/31/2011" 
    } 
    ] 
} 
+0

Was passiert, wenn Sie den vollständigen Pfad angeben? Lehnt das ab? – Gary

+0

@Gary Ich bekomme ein Fehlermenü ist nicht definiert ... ich habe meine Json-Skript über – user3574939

+0

hinzugefügt @Gary yep ich habe es. Danke für Ihre Hilfe! – user3574939

Antwort

1

Versuchen Sie, die Linie zu ändern

$http.get('data.json').success(function(data){

zu

$http.get('/apps/javascripts/data.json').success(function(data){.

+0

Danke Christian :) – user3574939

Verwandte Themen