2016-03-06 67 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]); 
    }); 

我希望它能幫助。

相關問題