Ag-grid — определение значений заголовков настраиваемых столбцов при экспорте в Excel/CSV

Я использую ag-grid в своем приложении. В верхней части сетки я предоставил 2 кнопки «Загрузить Excel» и «Загрузить CSV», когда пользователь нажимает любую кнопку, данные в сетке должны быть загружены в соответствующий формат файла.

Используя Angular, я создал функцию, которая срабатывает, когда пользователь нажимает кнопку «Загрузить Excel».

downExcelFile()
{
   var params = {
       columnKeys: ['firstName', 'lastName', 'email', 'mobile', 'email'],
       allColumns: false,
       skipHeader: false,
       skipFooters: true,
       onlySelected: false,
       suppressQuotes: true,
       columnSeparator: ','
};
   this.gridApi.exportDataAsExcel(params);
}

Проблема, с которой я столкнулся, заключается в том, что в моей сетке я показываю столбцы «электронная почта» и «идентификатор пользователя», но оба они имеют одинаковые значения электронной почты в этих столбцах. Это означает, что внутри оба столбца имеют одинаковое поле электронной почты.

Теперь, когда я определяю ColumnKeys, я указываю адрес электронной почты 2 раза, а в Excel я получаю заголовки столбцов как адрес электронной почты 2 раза, вместо этого я хочу отображать заголовок последнего столбца как UserId.

Любые предложения о том, как этого можно достичь?

Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Angular и React для вашего проекта веб-разработки?
Angular и React для вашего проекта веб-разработки?
Когда дело доходит до веб-разработки, выбор правильного front-end фреймворка имеет решающее значение. Angular и React - два самых популярных...
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Эпизод 23/17: Twitter Space о будущем Angular, Tiny Conf
Мы провели Twitter Space, обсудив несколько проблем, связанных с последними дополнениями в Angular. Также прошла Angular Tiny Conf с 25 докладами.
Угловой продивер
Угловой продивер
Оригинал этой статьи на турецком языке. ChatGPT используется только для перевода на английский язык.
Мое недавнее углубление в Angular
Мое недавнее углубление в Angular
Недавно я провел некоторое время, изучая фреймворк Angular, и я хотел поделиться своим опытом со всеми вами. Как человек, который любит глубоко...
Освоение Observables и Subjects в Rxjs:
Освоение Observables и Subjects в Rxjs:
Давайте начнем с основ и постепенно перейдем к более продвинутым концепциям в RxJS в Angular
0
0
60
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Да, вы можете добиться обрезки заголовка, используя функцию обратного вызова ProcessHeaderCallback(), посетите Официальную ссылку на документацию для получения более подробной информации.

Эта функция обратного вызова запускается для каждого столбца, даже если столбец пропущен для Excel согласно конфигурации, поэтому хитрость заключается в определении столбца, для которого вы хотите изменить заголовок. Я добился этого, используя счетчик в своем примере.

Вот демо-версия, которую я создал, используя пример, приведенный в их официальной документации.

https://codesandbox.io/p/sandbox/excel-export-customising-column-group-headers-forked-f46k4h?file=%2Fapp.comComponent.ts%3A123%2C46

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