Возможность экспортировать файлы электронных таблиц, такие как .xls, .csv, .xlsx и т. д., на клиенте — довольно интересная функция, которую легко реализовать с помощью JavaScript.

Для решения такой задачи я буду использовать подход, требующий установки следующих библиотек:

file-saver: решение для сохранения файлов на стороне клиента.
xlsx: средство синтаксического анализа и записи для различных форматов электронных таблиц.

npm install file-saver xlsx

Создайте функцию для получения желаемых данных для записи в электронную таблицу. Я назвал его exportSpreadsheetFile.js, и он сгенерирует файл .xlxs.

В этом подходе используется метод Array of Arrays, который я считаю довольно простым:

Функция принимает объект массива, и каждый массив внутри него становится строкой. Чтобы проиллюстрировать, вот пример:

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