Программный триггер фильтра для таблиц antd
Есть ли способ программно запустить фильтрацию по столбцам таблицы Antd?
Я создаю пользовательский заголовок, который является отдельным стилевым компонентом (поэтому я установил showHeader={ false }
на таблицу и использовать мой пользовательский заголовок для связи с таблицей путем установки состояний). Я хочу иметь возможность использовать его для запуска фильтрации по столбцам таблицы. Для сортировки я могу передать значение sortOrder
подпирайте и запускайте функцию сортировки снаружи. Для фильтрации, однако, у меня нет никакого очевидного способа вызвать функцию фильтра.
{
title: 'Title',
dataIndex: 'title',
width: '40%',
key: 'title',
sorter: (a, b) => a.title.localeCompare(b.title),
sortOrder: { this.state.columns['title'].sortOrder }
},
{
title: 'Type',
dataIndex: 'operation',
key: 'defectType',
width: '10%',
filters: Object.keys(topicType).map(key => ({ text: topicType[key], value: key })),
onFilter: (value, record) => String(value) === record.defectType
},
1 ответ
Просто удалось понять это. Если вы хотите явно фильтровать свои элементы в таблице и самостоятельно управлять состоянием фильтра; вам нужно пройти filteredValue
опора на конфигурацию колонки.
Установка этого значения в ноль отображает весь список без фильтрации.