我想仅覆盖特定列的ag-grid的默认排序机制。即我已经能够在网格级别覆盖,即
defaultColDef: {
comparator: (a, b) => typeof a === 'string' ? a.localeCompare(b) : (a > b ? 1 : (a < b ? -1 : 0));
}
然而,这在整个网格级别 - 我不想要。这可能吗?
谢谢!
答案 0 :(得分:2)
我找到了答案:colDef也有比较器属性,所以这实际上有效!
{
headerName: 'Currency',
field: 'currency',
comparator: (a, b) => typeof a === 'string' ? a.localeCompare(b) : (a > b ? 1 : (a < b ? -1 : 0));
}
答案 1 :(得分:0)
可以通过将ag-grid版本17.1.1中的accentedSort设置为True来解决此问题
m1 = df.columns.get_level_values('year') == 2010
m2 = df.columns.get_level_values('type') == 'b'
df = df.loc[:, m1 & m2]
print (df)
var1 var2
year 2010 2010
type b b
town
a 100 200
b 100 200
c 100 200