2017-05-30 3 views
0

Ich habe AngularJS + SpringMVC Projekt. Durch GET-Methode gibt es eine Liste von Entitäten, so kann ich es für ng-repeat zum Drucken von Objektdaten verwenden (Name, zum Beispiel) Aber in letzter Zeit musste ich hashmap (Schlüssel - Objekt mit Feldern, Wert - String)Richtige Handhabung hashmaps in SpringMVC + angularjs

Dies ist Teil des Codes, dass i

in Winkel für Listen verwendet Dies ist, wie Objekt füllt Felder in der Liste
<input type="text" ng-model="currentItem.taskName" class="form-control">

app.controller('mainController',function ($scope, $http) { 
$scope.tasks = []; 
$scope.currentItem = {}; 
$scope.currentView = 'allTasks'; 

$scope.refresh = function() { 
    $http({ 
     method:"GET", 
     url:"/task" 
    }).then(function (result) { 
     $scope.tasks = result.data; 
    }); 
}; 
$scope.refresh(); 

$scope.save = function(){ 
    $http({ 
     method:"PUT", 
     url:"/task", 
     data:$scope.currentItem, 
     headers:{'X-CSRF-TOKEN':$("meta[name='_csrf']").attr("content")} 
    }).then(function(result) { 
     for(var i = 0; i < $scope.tasks.length; i++){ 
      if(result.data.id===$scope.tasks[i].id){ 
       $scope.tasks.splice(i, 1); 
      } 
     } 
     $scope.tasks.push(result.data); 
    }); 
    $scope.cancel(); 
}; 

jetzt habe ich diesen Controller hatte:

@GetMapping 
    public Map<TaskEntity,String> findAll(){ 
     user = (UserEntity) SecurityContextHolder.getContext().getAuthentication().getPrincipal(); 
     return taskService.findFromUser(user.getId()); 
    } 

aber es scheint wie nicht funktioniert. Winkel nicht Felder Objekt finden, wenn ich
ng-repeat="(k,v) in tasks" {{k.name}}

verwenden, aber druckt diese k als Objektnamen [email protected]

Also meine Frage ist: Wie richtig hashmap zu lesen, und fügen Sie Elemente in es

Antwort

0

Welche Klasse ist verantwortlich für die Deserialisierung des Objekts zwischen dem Backend und dem Frontend?

Wenn ich in Ihren Schuhen war, würde ich zuerst das Ergebnis der GET-Anfrage in der Konsole drucken, um die vom Server zurückgegebene Struktur zu überprüfen, weil Sie eine komplexe Struktur zurückgeben, und vielleicht wird es nicht als gerendert du erwartest.

Hoffe, das hilft!

+0

Jackson, also nein, ich glaube nicht, dass es ein Problem ist. Dazwischen ist alles in Ordnung – jusinejo