私はag-gridを使用してサーバーから1行のデータを返します。データはサーバーから返され、グリッドに設定されますが、データは表示されません。 これは私のグリッドです:angularjs ag-gridは行データを表示しません
$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
}]
};
この関数は、初期化時に呼び出されます。
$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();
これは、行を返すサーバーへのサービスコールです:
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;
});
私はデバッグ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は、結果オブジェクトを表示すると、これは正しいデータが返される:
- 開始日:'01/01/2016T00:00: 00 '
- EndDate:'11/01/2016T00:00:00'
- TargetDB: 'MainDB'
- SourceDB: 'WrhDB'
- IsSuccess:ヌル
- DateCompleted:ヌル
$ scope.jobResult = results.dataについて –
results.dataは上記のJobParameterDtoオブジェクトです。 –