Это моя примерная таблица

В моей таблице есть сортировщики, поэтому мой заголовок кликабельный. Что я хочу сделать, так это то, что если таблица пуста, я хочу, чтобы мои заголовки были отключены или не доступны для кликов. Возможно ли это с помощью css? Есть ли другой подход, который я могу сделать, чтобы сделать это? Ниже приведен код, который я использовал для столбцов. Мои данные из источника данных.
const columns = [
{
title: 'LAST NAME',
dataIndex: 'lastName',
sorter: (a, b) => a.lastName.localeCompare(b.lastName),
width: '15%'
},
{
title: 'FIRST NAME',
dataIndex: 'givenName',
sorter: (a, b) => a.givenName.localeCompare(b.givenName),
width: '15%'
},
{
title: 'MIDDLE NAME',
dataIndex: 'middleName',
sorter: (a, b) => a.middleName.localeCompare(b.middleName),
width: '15%'
},
{
title: 'DATE OF BIRTH',
dataIndex: 'dateOfBirth',
sorter: (a, b) => a.dateOfBirth.localeCompare(b.dateOfBirth),
width: '14%'
},
{
title: 'GENDER',
dataIndex: 'sex',
sorter: (a, b) => a.sex.localeCompare(b.sex),
width: '12%'
},
{
title: 'ADDRESS',
dataIndex: 'address',
sorter: (a, b) => a.address.localeCompare(b.address),
},
];





Что бы я сделал, это извлечь функции сортировки, которые я хотел бы отключить, чтобы передать им мои данные, а затем вернуть false, если данные пусты. Что-то вроде этого :
const columns = [
{
title: 'LAST NAME',
dataIndex: 'lastName',
sorter: getSorter(myDataSource),
width: '15%'
}
];
getSorter = (myDataSource) => myDataSource.length > 0 ? (a, b) => a.lastName.localeCompare(b.lastName) : false;
Так :
Проверьте, пуст ли этот источник данных:
2а. Если он пуст, верните false (что удалит параметры сортировки)
2б. Если нет, вернуть функцию сортировки
Здесь — это документация для реквизита column, в которой говорится, что вы можете передать функцию или логическое значение свойству sorter.
@Alexandria.Omega.Reid рад, что смог помочь! Могу я попросить вас принять ответ, если он сработал так, как вы хотели? :)
Я хотел бы не показывать заголовки, когда нет данных. Предоставляет ли antd эту конфигурацию?
это сработало. добавил несколько битов к нему, и он работал отлично. Спасибо!