如何从数组中提取特定数据以在ui-grid上显示

时间:2016-02-14 01:09:58

标签: angularjs angular-ui-grid

我正在尝试更正以下的ui-grid:

enter image description here

要显示我想要的对象alquiler和object usuario的信息,这两个都包含在Rent(UsuarioHasAlquiler)对象中。

我尝试了以下内容:

'use strict';

angular.module('myApp.view1', ['ngRoute'])

.config(['$routeProvider', function($routeProvider) {
  $routeProvider.when('/view1', {
    templateUrl: 'resources/view1/view1.html',
    controller: 'View1Ctrl'
  });
}])

.controller('View1Ctrl', ['$scope','$http',function($scope,$http) {
    $scope.rents = [];


$scope.requestObject = {"pageNumber": 0,"pageSize": 0,"direction": "","sortBy": [""],"searchColumn": "string","searchTerm": "","userRent": {}};
    $http.post('rest/protected/userRent/getAll',$scope.requestObject).success(function(response) {
        console.log("response",response)
        $scope.rents = response.usuarRent;
        console.log("$scope.items",$scope.rents[1])
    //  console.log("Tipo de usuario:", $scope.usuarios.tipos)
    });


$scope.gridOptions = { data: rents, 
                       columnDefs: [{ field: 'idUsuarioHasAlquiler', displayName: 'ID'},
                                    { field: 'usuario.firstname', displayName: 'First Name'},
                                    { field: 'alquiler.name', displayName: 'Item Name'},
                                    { field: 'estado_renta', displayName: 'Returned'}]
  };  

}]);

虽然请求是成功的,但我无法从网格中显示的对象中提取出我想要的内容。

<div class="container">
    <div class="container">
        <h3 class="text-center">Rents</h3>
        <hr>
    </div>


    <div class="container">
        <div class="row">
             <div ui-grid="gridOptions" class="myGrid"></div>
             <br>
             <button type="button" ng-click="" class="btn btn-primary">Add</button> 
             <button type="button" ng-click="" class="btn btn-success">Edit</button>  
             <button type="button" ng-click="" class="btn btn-danger">Delete</button>
        </div>
    </div>
</div>

我希望有人能指出我正确的方向。谢谢,抱歉西班牙语。

1 个答案:

答案 0 :(得分:1)

我创建了一个plunker based on your data,它运行正常。据我所知,您的版本与工作版本之间的唯一区别在于您已将$scope.gridOptions.data设置为rents,而不是$scope.rents

我可以重新创建问题的唯一方法是在html中设置ui-grid="{data:rents}",这不会将列定义应用于网格。您是否偶然从data:rents属性中复制ui-grid并将其粘贴到您的$scope.gridOptions对象中?在这种情况下,什么都不应该出现,因为rents未定义。