2016-03-06 68 views
2

上线#2 .selectRow()不工作:Angular UI Grid:如何在加载新数据后直接选择一行?

$scope.gridOptions.data = MyResource.query(); 
$scope.gridApi.selection.selectRow($scope.gridOptions.data[0]); // Select first row 

我猜这是行不通的,因为网格还没有完成刷新,又或还没有开始,因为清爽它仍在等待MyResource.query()的数据。

下也不管用,我不知道为什么:

$scope.gridApi.grid.modifyRows(MyResource.query()); 
$scope.gridApi.selection.selectRow($scope.gridOptions.data[0]); // Select first row 

什么错到底是什么?提前致谢。

回答

0

尝试使用$ scope.gridApi.grid.modifyRows($ scope.gridOptions.data);

+0

这将导致一个空网格 – x74x61

+0

函数modifyRows对我而言不存在,但是当我调用它时不会显示任何错误。它就像什么都没发生.. –

0

我不确定你是否已经解决了这个问题,但我认为问题在于你试图在它出现之前选择该行。你可以分两步做到这一点。首先加载数据,然后在完成时广播事件,然后在收听广播时获取该行。 所以第1步将一些这样的事:

$scope.gridOptions.data = MyResource.query(); 
$rootScope.$broadcast('data_loaded', $scope.gridOptions.data); 

再听听广播:

$scope.$on('data_shared',function(event, data) { 
    $scope.gridApi.selection.selectRow($scope.gridOptions.data[0]); 
    }); 

我希望它能帮助。

相关问题