我正在使用ajgularjs的网站上工作,该网站将显示从ng-grid显示中的web api调用返回的数据。 $ http.get之后未显示数据的早期问题通过服务调用解决,例如:
services.factory('Filing', ['$resource',
function($resource) {
return $resource('/api/bills');
}]);
我需要在ng-grid上连接三个数据列的值以在单个ng-grid列中显示,这是不工作。
在Google的角度网站上,我发现了一个类似的问题来调用一个函数来解决连接,所以在尝试这个时我在控制器.js文件中提出了以下内容:
$scope.billData= Filing.query(); // from services.js
$scope.gridData = $scope.billData;
$scope.gridDefs = [
{ field: 'billNumberColumnDisplay()', displayName: 'Bill' },
{ field: 'AuthorLastName', displayName: 'Author'},
{ field: 'Status', displayName: 'Status'},
{ field: 'Committee', displayName: 'Committee'}
];
$scope.gridOptions = {
data: 'gridData',
columnDefs: 'gridDefs',
enableColumnResize: true,
multiSelect: false
};
//function to concatenate the bill number fields
angular.forEach($scope.gridData, function(row) {
row.billNumberColumnDisplay = function() {
return this.BillId.Chamber + this.BillId.Type.trim() + ' ' + this.BillId.Suffix.replace(/^0+(?!\.|$)/, '');
};
});
第二,第三和第四列显示得很好,因此并不是数据没有返回到网格。如果我只是在return / api调用中显示一个列,它也会显示在第一列中。
那么,有没有人可以指出我在这方面的正确方向?我不认为连接字段会带来如此艰巨的任务,但我显然做错了。
提前感谢您的任何帮助,
丹