以编程方式选择行ag-grid angular 2

前端之家收集整理的这篇文章主要介绍了以编程方式选择行ag-grid angular 2前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
尝试在ag-grid中默认选择第一行.根据ag-grid文档,我应该可以使用NodeSelection Api( https://www.ag-grid.com/javascript-grid-selection/?framework=all#gsc.tab=0)来完成此操作.但我根本无法访问节点对象.
HTML文件

<div class="pulldown panel panel-default">
          <div class="panel-heading">{{rulesSummaryTitle}}</div>
          <ag-grid-angular #agGrid   class="ag-fresh ag-bootstrap"
                           [gridOptions]="gridOptions"
                           [rowData]="rowData"
                           [columnDefs]="columnDefs"
                           [enableSorting]="true"
                           rowSelection="single"
                           [pagination]="true"
                           [suppressCellSelection]="true"
                           (gridReady)="onGridReady($event)"
                           (rowSelected)="onRowSelect($event)">
          </ag-grid-angular>
      </div>

我在“onGridReady”方法调用节点选择api但错误输出错误消息“无法调用setSelected on undefined”.

public onGridReady(event: any): void {
    event.api.sizeColumnsToFit();
    this.gridOptions.api.node.setSelected(true);
  }

解决方法

gridOptions.api对象上没有节点属性.你会想做更像这样的事情:

public onGridReady(event: any): void {
    event.api.sizeColumnsToFit();
    gridOptions.api.forEachNode(node=> node.rowIndex ? 0 : node.setSelected(true))
  }

这将检查数据中的每个节点并查看rowIndex是否为0,如果是,则使用节点对象设置所选属性

猜你在找的Angularjs相关文章