Angularjs 将焦点设置为ui网格中新添加的行

Angularjs 将焦点设置为ui网格中新添加的行,angularjs,angular-ui-grid,Angularjs,Angular Ui Grid,我正在使用ui网格。用例是这样的:单击一个按钮,就会添加一个新行。我想把焦点放在新添加行的第一个单元格上。有什么建议吗?这里有一个相同的例子。 我希望能有所帮助。我尝试了以下方法,但仍然没有任何效果。”$超时(函数(){$scope.gridApi.cellNav.scrollToFocus($scope.gridOptions.data[0],$scope.gridOptions.columnDefs[0]);},3000);'事实证明,ui网格需要一些时间延迟来更新数据。所以一个小小的延迟

我正在使用ui网格。用例是这样的:单击一个按钮,就会添加一个新行。我想把焦点放在新添加行的第一个单元格上。有什么建议吗?这里有一个相同的例子。


我希望能有所帮助。

我尝试了以下方法,但仍然没有任何效果。”$超时(函数(){$scope.gridApi.cellNav.scrollToFocus($scope.gridOptions.data[0],$scope.gridOptions.columnDefs[0]);},3000);'事实证明,ui网格需要一些时间延迟来更新数据。所以一个小小的延迟(使用$interval实现)就成功了。
$scope.addNew = function() {
var newobj = {"id": "","name":"" }; 
$scope.gridOptions.data.unshift(newobj);
$scope.gridApi.core.notifyDataChange(uiGridConstants.dataChange.ROW); 

//set focus to the new row 
$scope.gridApi.cellNav.scrollToFocus( $scope.gridOptions.data[0], $scope.gridOptions.columnDefs[0]);
};
$timeout(function() {
  $scope.gridApi.cellNav.scrollToFocus(
    $scope.termGridOptions.data[0],
    $scope.termGridOptions.columnDefs[0]
 );
});