无法使用Angular JS中的ng-repeat从REST API填充值

时间:2016-11-29 20:24:58

标签: html angularjs spring

我正在从Angular JS做一个Rest调用。一旦我收到API的回复。我打算使用ng-repeat在前端填充消息。这是我的控制器端调用。

     $http({
          url: "http://localhost:8080/services/AddConfig", 
          method: "POST",
          data: dataobj,
          headers: {
                'Content-Type': 'application/json'
            }
         }).success(function(data, status, headers, config){
                responseData = data;
                $scope.dbresponse = responseData;
                console.log(responseData);
                console.log($scope.dbresponse[0].messages);
                console.log($scope.dbresponse[0].errors);
                if( $scope.dbresponse[0].messages[0] != null){
                    console.log("success message");

                    console.log("After Setting it");
                }else if ($scope.dbresponse[0].errors != null){
                    console.log("has errors throw validation message");
                }
         }).error(function(error){
                alert("Please Try again");
                });

这是我在控制台上看到的回复

    Object    
    errors:null
    messages:Array[1] 
           0:Added Successfully

我想要做的是访问该消息并填充在前端。我使用ng-repeat执行操作并且失败。

这是我的HTML

     <table>
<tr ng-repeat="messages in dbresponse.messages">
<td align="left" class="validMsg"><img src="images/red_bullet.gif" border="0" width="8" height="8" alt="">&nbsp;{{messages}}</td></tr>
</table> 

1 个答案:

答案 0 :(得分:1)

在您的API调用响应中,您的'dbresponse'似乎是一个数组:

  

的console.log($ scope.dbresponse [0] .messages);

在您的html中,您可以将其作为具有属性的单个对象访问:

  

&lt; tr ng-repeat =“dbresponse.messages中的消息”&gt;

如果您的'responseData'是一个数组,您可能希望在html中对其进行处理。如果不是这样,请提供更多信息,了解html的外观以及'$ scope'包含的内容。