我自己想出了答案.这是我的控制器(ES6):
原文链接:https://www.f2er.com/angularjs/142842.html'use strict'; class TrackingRecordsCtrl { constructor($scope) { // The content of this template is included // separately $scope.gridOptions = { rowTemplate: 'app/components/tracking-record/grid-row.html',}; // This function is referenced from the row's template. // I'm just console.logging the row but you can of // course do anything you want with it. $scope.gridRowClick = row => { console.log(row); // or maybe $location.path(row.url)? }; $scope.gridOptions.data = { // This of course can't just be an empty object. // Chances are you already have something defined // for gridOptions.data. }; } } TrackingRecordsCtrl.$inject = ['$scope']; export default TrackingRecordsCtrl;
这是我的行模板(玉):
.ui-grid-cell( ng-repeat='(colRenderIndex,col) in colContainer.renderedColumns track by col.colDef.name' ng-class="{ 'ui-grid-row-header-cell': col.isRowHeader }" ui-grid-cell='' ng-click='grid.appScope.gridRowClick(row)' )
作为一个奖励,这里是我的样式表(SCSS).我认为突出显示光标下的行是有意义的,并使用指针光标来更清楚地显示行是可点击的.
.ui-grid-row { cursor: pointer; &:hover .ui-grid-cell { background-color: #CCC; } }