尝试NumberRangeColumnFilter
在特定列的表之外实现 , 。基本上使用globalFilter。
我将SelectColumnFilter
from 示例转换为下表之外的全局选择过滤器,如下所示。
function GlobalSelectFilter({
preGlobalFilteredRows,
globalFilter,
setGlobalFilter,
}) {
const [value] = React.useState(globalFilter)
const options = React.useMemo(() => {
const options = new Set()
preGlobalFilteredRows.forEach(row => {
options.add(row.values['priority'])
})
return [...options.values()]
}, ['priority', preGlobalFilteredRows])
return (
<span>
<select
value={value}
onChange={e => {
setGlobalFilter((e.target.value == 'All' ? undefined : e.target.value) || undefined)
}}
>
<option value="">All</option>
{options.map((option: any, i) => (
<option key={i} value={option}>
{option}
</option>
))}
</select>
</span>
)
}
但是,当我尝试将NumberRangeColumnFilter
示例用于 aGlobal NumberRangeColumnFilter
时,globalFilter
不会采用类似的数组filterValue = []
我的方法完全错误吗?如何为 globalFiltering 实现这个最小最大范围的事情。一个例子真的很有帮助。还尝试通过日期范围过滤来做到这一点。