javascript - Ag-grid 过滤器排序错误
问题描述
我正在使用ag-grid,但在数值过滤方面有一个小问题:
如您所见,除非数字是 2xxx,否则排序进展顺利,但一旦达到 3 个数字,它就会开始混乱。
我所期望的是从 500 开始到 2400+ 或相反的排序。也许我不知道要添加一个特殊选项来实现这一点,我正在疯狂尝试不同的选项,但似乎没有任何效果。我希望你能帮忙。谢谢。
更新:
我在关于过滤的原始 ag-grid 示例中重现了该问题: https ://plnkr.co/edit/Tn9ZeCH4fmLr2ZHQPivQ?p=preview我只是改变了年份值,你可以看到它没有按预期排序。
if (r.year === 2008) r.year = 860
if (r.year === 2012) r.year = 920
解决方案
原因是它将数据排序为字符串,而不是数字。因此,只需将自定义排序添加到您comparator
的yeat
字段中:
var numberSort = (num1, num2) => {
return num1 - num2;
};
var columnDefs = [
/*The other code is omitted for the brevity*/
{headerName: "Year", field: "year", width: 90, comparator: numberSort},
/*The other code is omitted for the brevity*/
];
更新:
看起来您需要添加sortable
到gridoptions
:
var gridOptions = {
defaultColDef: {
filter: true,
sortable: true
},
}
推荐阅读
- reactjs - 如何在 react-konva 中捕获视频的第一帧
- gcc - 在 centOS 上安装 PETSc 时检测到一些奇怪的错误
- python - 如何在张量中添加新维度
- java - Crinteria Join make AND insetad of OR
- python - 如何在plotly和python中使用make_subplot绘制多个图表
- azure-devops - 将所有带有历史记录、附件、链接的工作项从 TFS 看板迁移到 Azure 板
- java - 如何使用 Java 以编程方式将 powerpoint (pptx) 导出到带有动画的视频
- python-3.x - 运行pytest时无法从django连接到postgres数据库
- python - 从字符串中删除以分号分隔的重复子字符串
- sql - 在 SQL Server 中为同一天的数据分配组 ID