Reactjs dx react栅格过滤器选项';相等';不起作用
我用dx React Grid创建了一个表,在其中一列中,数据在Reactjs dx react栅格过滤器选项';相等';不起作用,reactjs,devexpress,devextreme,Reactjs,Devexpress,Devextreme,我用dx React Grid创建了一个表,在其中一列中,数据在数据提供程序的帮助下显示为彩色空块,每种颜色对应于1、2、3、4或5中的一个数字 以下是我的网格实现片段: <Grid rows={rows} columns={columns}> <FilteringState /> <SearchState /> <RatingHeatmapProvider for={skillColumns} /> <In
数据提供程序的帮助下显示为彩色空块,每种颜色对应于1、2、3、4或5中的一个数字
以下是我的网格实现片段:
<Grid rows={rows} columns={columns}>
<FilteringState />
<SearchState />
<RatingHeatmapProvider for={skillColumns} />
<IntegratedFiltering />
//....
<Table />
<TableHeaderRow />
<Toolbar />
<SearchPanel />
<TableFilterRow showFilterSelector iconComponent={FilterIcon} />
//....
</Grid>
//....
//....
除了过滤选项['equal','notEqual']
之外,其他所有选项,如大于,都包含等功能。
显示文本值的其他列中的所有选项均有效
在下图中,前4列对应于显示彩色块的列,最后一列是直接显示文本值的列。正如您所看到的,filter=3
应该向我显示绿色磁贴,但它没有。甚至比同等的或比其他的效果更好(图中未显示)
我该如何解决这个问题
[编辑]:注意:正如我刚才检查的,即使没有数据提供程序和带状列,即直接显示数字,这个问题也存在。我想您将“评级”作为“数字”存储在数据库中,不是吗?当网格处理'equal'/'notEqual'过滤操作时,它会比较来自过滤器编辑器(字符串
)的值和来自行(数字
)的值。它会导致所描述的问题。这个问题已经解决了。该修复程序将在下一次更新中可用
目前,您可以使用自定义谓词作为解决方法:
filteringColumnExtensions: [
{
columnName: "comumn_name",
predicate: (value, filter) => {
if (filter.operation === "equal") {
return String(value) === filter.value;
}
// process other filter operations here...
}
}
]
.仅在本用例中,将数字行值设置为String(value)
也可以。谢谢你的意见。谢谢。