Программный триггер фильтра для таблиц 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 опора на конфигурацию колонки.

Установка этого значения в ноль отображает весь список без фильтрации.

Другие вопросы по тегам