Как сделать два слоя заголовков? - PullRequest
0 голосов
/ 19 июня 2019

У меня есть простое веб-приложение, которое создает файл Excel из XML с использованием SheetJS.

Это работает:

Код:

data.push({
  "Car Make": car.make,
  "Car Model": car.model,
  "Engine Type": car.engine.type,
  "Engine HP": car.engine.hp
});

var wb = XSLX.utils.book_new();
filename = "Workbook"
wb.Props = {
  Title: filename,
  Subject: "",
  Author: ""
};

wb.sheetNames.push("Cars and Engines");
wb.Sheets["Cars and Engines"] = XLSX.utils.json_to_sheet(data);

Выход:

Car Make | Car Model | Engine Type | Engine HP
---------+-----------+-------------+-----------
Ford     | F150      | V8          | 290
Dodge    | Viper     | V10         | 645

Но это не работает:

Код:

data.push({
  "Car":{
    "Make":car.make,
    "Model":car.model
  },
  "Engine":{
    "Type":engine.type,
    "HP":engine.hp
  }
});

Выход:

Car | Engine
----+-------
    |
    |

Это то, что я хочу:

     Car      |   Engine     <--.
 Make | Model | Type | HP    <---'- Two Headers
------+-------+------+-----
Ford  | F150  | V8   | 290
Dodge | Viper | V10  | 645

Есть ли способ сделать это с SheetJS ?

...