Ant Design Table - 按日期范围过滤

问题描述 投票:0回答:2

我尝试使用此代码在 Ant Design 的表中实现日期范围过滤器here,但到目前为止尚未成功。 它看起来不适用于较新版本的 Ant Design。

有人成功实施了吗?怎么办?

javascript reactjs antd
2个回答
1
投票
  1. https://ant.design/components/table/#header

    中找到filterDropdown方法
  2. 替换为:

    setSelectedKeys(e ? [e] : [])} onPressEnter={() => { 确认(); setSearchText(selectedKeys[0]), setSearchedColumn(dataIndex); }} />

  3. 将 onFilter 替换为:

    onFilter: (值, 记录) => 记录[dataIndex] ? moment(record[dataIndex]).isBetween(value[0], value[1], 'day', '[]') : "" ,

  4. (可选)将渲染替换为:

    渲染:text => moment(text).format("DD/MM/YYYY")


0
投票

社区,

我不知道你是否能解决这个问题,但我用这段代码解决了它并且成功了。

我在列中添加了此代码:

 filters: [],filteredValue: filteredInfo.dateRange ? [filteredInfo.dateRange.startDate, filteredInfo.dateRange.endDate] : null,
 onFilter: (value, record) => {
 const { vaccineDate } = record;
 const { startDate, endDate } = filteredInfo.dateRange;
 return moment(vaccineDate).isBetween(startDate, endDate, null, '[]');

我做了很多测试来找到这个解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.