Ag-Grid를 사용하여 서버에서 1 행의 데이터를 반환합니다. 데이터가 서버에서 반환되고 그리드에 설정되어 있지만 데이터가 표시되지 않습니다.angularjs ag-grid가 행 데이터를 표시하지 않습니다.
angular.module('vAnalyzeApp.services')
.factory('JobResult', function($resource, configSettings) {
var jobresult = $resource(configSettings.apiServiceUrl + 'api/v1/jobresult', {}, {
'paged': {
method: 'GET',
isArray: false,
transformResponse: function(data, headers) {
var count = headers('Count');
return {
count: angular.fromJson(count),
results: angular.fromJson(data)
};
}
}
});
return jobresult;
});
내가 디버그 :
$scope.refreshLastResultGrid = function() {
jobResult.paged().$promise.then(function (results) {
$scope.jobResult = results;
$scope.lastResultGridOptions.rowData = $scope.jobResult;
if ($scope.lastResultGridOptions.api) {
$scope.lastResultGridOptions.api.setRowData();
$scope.lastResultGridOptions.api.sizeColumnsToFit();
}
}, function (error) {
$scope.messageModalVariables = {
messageTitle: 'Error Refreshing Job Result',
messageDisplay: 'API Error. Could not retrieve job results.',
messageType: 'Error',
okIsHidden: false,
yesNoIsHidden: true
};
$scope.openMessageModal($scope.messageModalVariables);
});
};
$scope.refreshLastResultGrid();
이 행을 반환하는 서버에 서비스 호출입니다 :이 함수는 초기화시 호출
$scope.lastResultGridOptions = {
rowData: $scope.jobResult,
suppressCellSelection: true,
suppressSorting: true,
enableFilter: true,
enableColResize: true,
angularCompileRows: true,
angularCompileHeaders: true,
suppressMenuHide: true,
columnDefs: [{
field: 'StartDate',
filter: 'text',
headerName: 'Start Date',
cellClass: 'wrap-text',
minWidth: 10
}, {
field: 'EndDate',
filter: 'text',
headerName: 'End Date',
cellClass: 'wrap-text',
minWidth: 40
}, {
field: 'IsSuccess',
filter: 'text',
headerName: 'Result Status',
cellClass: 'wrap-text',
minWidth: 40
}, {
field: 'DateCompleted',
filter: 'text',
headerName: 'Date Completed',
cellClass: 'wrap-text',
minWidth: 40
}]
};
: 이 내 그리드입니다 refreshLastResultGrid
기능과 results
이 서버에서 돌아와 $scope.lastResultGridOptions.rowData
으로 설정됩니다. setRowData()
함수가 오류없이 완료되었지만 데이터가 표에 표시되지 않습니다. 다음은 그리드의 스크린 샷입니다 :
왜 그리드에 데이터가 표시되지 않습니까?
UPDATE 결과 개체는 :
public class JobParameterDto
{
public DateTime StartDate { get; set; }
public DateTime EndDate { get; set; }
public string SourceDB { get; set; }
public string TargetDB { get; set; }
public Nullable<DateTime> DateCompleted { get; set; }
public Nullable<bool> IsSuccess { get; set; }
}
I이 올바른 데이터가 반환되는 결과 개체 볼
:- STARTDATE : 01/01/2016T00 : 00 : 00
- 종료 날짜 : '11/01/2016T00 : 00 : 00 '
- TargetDB'MainDB ' ,
- SourceDB : 'WrhDB'
- IsSuccess : 널 (null)
- DateCompleted : 널 (null)
약 $ scope.jobResult = results.data; –
results.data는 위에 표시된 JobParameterDto 객체입니다. –