java - 将 Json 文件存储在 AngularJS 变量中以与 'ng-repeat' 一起使用

标签 java javascript json rest angularjs

该项目的目标是在网站中显示 Oracle PL/SQL 记录。我已使用以下教程 ( http://draptik.github.io/blog/2013/07/13/angularjs-example-using-a-java-restful-web-service/ ) 建立与数据库的连接。我能够存储和显示单个记录的值,但当添加更多记录时就不行了。

Sample JSON Information
[  
 {  "firstName":"FN1",  
    "lastName":"LN1",  
    "email":null,  
    "createdBy":-1,  
    "createdDate":"2013-09-24"  
 },  
 {  "firstName":"FN2",  
    "lastName":"LN2",  
    "email":null,  
    "createdBy":-1,  
    "createdDate":"2013-09-24"  
 },  
 {  "firstName":"FN3",  
    "lastName":"LN3",  
    "email":null,  
    "createdBy":-1,  
    "createdDate":"2013-09-24"  
 },  
 {  "firstName":"FN4",  
    "lastName":"LN4",  
    "email":null,  
    "createdBy":-1,  
    "createdDate":"2013-09-24"  
 },  
 {  "firstName":"FN5",  
    "lastName":"LN5",  
    "email":null,  
    "createdBy":-1,  
    "createdDate":"2013-09-24"  
 }  
]  

这个例子使用了一个工厂,我确信它保存着来自 json 的数据,但我不能让它存储超过一条记录。理想情况下,我将能够按照他们在本例中的方式循环浏览记录:http://jsfiddle.net/pJ5BR/124/ .

如果有任何建议,我将不胜感激。这些是当前工厂的定义方式。

services.js:  
services.factory('QueryFactory', function ($resource) {
    return $resource('/Query/rest/json/queries/get', {}, {
        query: {
            method: 'GET',
            params: {},
            isArray: false
        }
    });
});

controllers.js:  
app.controller('MyCtrl1', ['$scope', 'QueryFactory', function ($scope, QueryFactory) {

    QueryFactory.get({}, function (QueryFactory) {
        $scope.firstName = QueryFactory.firstName;
    });
}]);

最佳答案

QueryFactory.get() 的结果不存储在 QueryFactory 中,而是存储在返回的 promise 对象中。此外,您需要使用 query() 而不是 get(),因为响应是一个数组而不是单个对象。

所以你的 Controller 应该是这样的:

app.controller('MyCtrl1', ['$scope', 'QueryFactory', function ($scope, QueryFactory) {
    $scope.results = QueryFactory.query();
    // $scope.results is set to a promise object, and is later updated with the AJAX response
}]);

您可以像这样在 HTML 中使用数据:

<ul ng-controller="MyCtrl1">
  <li ng-repeat="result in results">{{result.firstName}}</li>
</ul>

关于java - 将 Json 文件存储在 AngularJS 变量中以与 'ng-repeat' 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19060169/

相关文章:

java - 将枚举转换为列表

java - 查找元素是否存在于给定范围内

javascript - Firebase (2016) 浅层查询

javascript - 基于并集和交集合并两个 json 数组对象

java - JSONArray[0] 不是 JSONObject 异常

java - Jaxb 解码包含 & <> 符号的 xml

java - 如何解决这个需求,Android条件序列化名称

循环反转数组的Javascript

javascript - 向上或向下滚动时 Div/Box 出现问题

java - solr 结果结构中可以有多个实体吗