Как экспортировать Excel из данных JSON с соответствующим диапазоном строк, используя SheetJs? - PullRequest
0 голосов
/ 07 ноября 2019

Я использую SheetJS js-xlsx библиотеку реагирования для экспорта данных в файл Excel.

Я пытаюсь экспортировать файл Excel, где будет динамический диапазон строк для данных, где это необходимо. Есть простой способ сделать это - использовать метод table_to_book(), при котором файл excel генерируется точно так же, как в html-таблице.

var wb = XLSX.utils.table_to_book(document.getElmentById(#idOfTheTable));

Однако это действительно служит моей цели Я хочу знать, есть ли способ экспортировать файл Excel из json для такой структуры данных:

const purchaseJsnData= [
  {
    "id": "0",
    "PRNumber": "",
    "TotalAmount": 110,
    "CostCenter": "",
    "Details": [{"ItemDescription": "item1", "Quantity": 1},
                {"ItemDescription": "item2", "Quantity": 3}]
  },
  {
    "id": "10",
    "PRNumber": "111",
    "TotalAmount": 520,
    "CostCenter": "",
    "Details": [{"ItemDescription": "i1", "Quantity": 5},
                {"ItemDescription": "i2", "Quantity": 6}]
  }
]

Следующая строка экспортирует Excel для простых данных json, где нет значений дочернего массивав теме.

 XLSX.utils.sheet_add_json(ws, purchaseJsnData, { skipHeader: false, origin: "A5" });

Экспорт Excel из прямой HTML-таблицы позволяет мне экспортировать только данные текущей страницы (поскольку существует разбиение на страницы), я хочу экспортировать весь набор данных, поэтому ищу способ экспортировать Excel изФормат JSON.

...