JavaScript - Kako uvesti 'xlsx' u node.js EcmaScript modul napisan u typescriptu?


Koristeći Node.js v18.12.1, pokušavam koristiti https://www.npmjs.com/package/xlsx u node.js EcmaScript modulu napisanom u typescriptu.

Međutim, kada slijedim upute za Node.js (https://docs.sheetjs.com/docs/getting-started/installation/nodejs#esm-import) na ovaj način :

import * as fs from 'fs';

import * as XLSX from 'xlsx';
XLSX.set_fs(fs);

Dobivam sljedeću pogrešku u vrijeme izvođenja (ne pri kompilaciji): TypeError: XLSX.set_fs nije funkcija

Što nije u redu s ovim uvozom?

tsconfig.json:

...
   "target": "ESNext", 
   "module": "ESNext",
...

package.json:

...
"type": "module"
...

Odgovor #1

Starija izdanja tehnički su dostupna na javnom npm registru kao xlsx, ali registar nije ažuriran. Najnovija verzija na tom registru je 0.18.5

Slijedeći ove korake rješava problem: https://docs.sheetjs.com/docs/getting-started/installation/nodejs#installation

Povezani članci