如何在ag-grid中检索列索引?

时间:2019-05-25 13:21:30

标签: angular ag-grid

ag-grid中,当我想检索行索引时,使用:

params.node.id

但是,我找不到对列执行相同操作的方法。 我发现的所有内容都是检索columnId,它引用列定义中的字段变量。
即:如果这是列定义:

 {
   headerName: "checkButton 2",
   field: "checkbuttonTwo",
   cellRenderer: "checkButtonComponent",
   width: 150
 }

此:

params.column.getId()  

会返回:

 checkbuttonTwo

所以我的问题是:
有什么方法可以检索列索引? 例如:对于第二列,我将有2,依此类推。
谢谢

4 个答案:

答案 0 :(得分:1)

我在TypeScript中编写了一个辅助函数,用于通过col id获取列索引。

function getColumnIndexByColId(api: ColumnApi, colId: string): number {
    return api.getAllColumns().findIndex(col => col.getColId() === colId);
}

答案 1 :(得分:0)

没有直接的方法来获取列索引,但是可以在getAllColumns()上使用Column API方法来获取所有列,然后从该数组中找到列的索引。

有关Column API here

的更多信息

答案 2 :(得分:0)

对于每一列, 您可以通过以下方式定义唯一的ID:

{
          headerName: "Axa premises",
          field: "axPr",
          width: 150,
          id:0,
          cellRenderer:'iasaCheckboxRendererComponent'
            }

您可以通过以下方式访问它:

this.params.column.colDef.id

答案 3 :(得分:0)

您可以通过运行以下函数来获取列headerName

function CustomTooltip() {}

CustomTooltip.prototype.init = function(params) {
  var headerName = params.colDef.headerName;
}