2017-04-07 104 views
0

编辑:找到了移动列不V6.4.0工作如何对工具面板中的列进行排序。银格

实例链接: https://www.ag-grid.com/javascript-grid-tool-panel/toolPanelExample.html

在工具面板中可见列的顺序总是相同为了在列定义中定义它们。检查下面的图像。

The way they are shown in the tool panel. Want to sort it say alphabetically

The order they are shown in the grid

是否有可能在他们的顺序工具面板进行排序(按字母顺序说),但不改变它们的顺序依次在网格中。

我试了一下:

我试图在columnDefination定义它们按字母顺序排列,并尝试使用columnApi.moveColumn()将其移动到那里的位置。当我不得不移动所有列并定位它们时,这看起来不起作用,也增加了复杂性。

问题:

  1. 这甚至可能/可行吗?
  2. moveColumn()功能不起作用。你能告诉它在哪个版本中被引入,无法在changeLog中找到它。

其他细节:

使用AG-电网企业版V6.4.0

+0

'moveColumn'正在为我工​​作,我正在使用v 7.0.2。如果你能向我们展示你的moveColumn的实现,我们可以从那里帮助你。 –

+0

我发现问题出在ag-grid的版本上。 ** moveColumn **在** v6.4 **中不起作用。使用最新版本。 –

回答

1

请参考this plnkr。我使用了与之相同的基本思想,按字母顺序创建colDefs,然后在onGridReady函数中将列移动到各自的展示位置。有两个功能,这些功能在做这个有用,二是在我看来受欢迎得多:

moveColumn(colKey, toIndex) 
//colKey refers to the id of the column which defaults to the specified field 
//toIndex is simply a number that is within the range of columns. 

moveColumns(colKeys[], toIndex) 
//colKeys[] is an array in the order that you want them to be 
    displayed starting at the toIndex 

下面是我在plnkr实现它:

private onReady() { 

    // this.gridOptions.columnApi.moveColumn('name',1) 
    // this.gridOptions.columnApi.moveColumn('country',2) 
    // this.gridOptions.columnApi.moveColumn('dob',3) 
    // this.gridOptions.columnApi.moveColumn('skills',4) 
    // this.gridOptions.columnApi.moveColumn('proficiency',5) 
    // this.gridOptions.columnApi.moveColumn('mobile',6) 
    // this.gridOptions.columnApi.moveColumn('landline',7) 
    // this.gridOptions.columnApi.moveColumn('address',8), 

    this.gridOptions.columnApi.moveColumns(['name', 'country', 'dob', 'skills', 'proficiency', 'mobile', 'landline', 'address'],1) 

} 

还有一个功能如果你想使用它:

moveColumnByIndex(fromIndex, toIndex) 
//This uses just indexes and not the colid/colkey idea if you prefer 
    to keep it more anonymous 
+0

** moveColumns()**函数是最简单的方法。谢谢您的帮助。 –

相关问题