Atvērtā koda Node.js bibliotēka datu rakstīšanai uz Excel failiem
Veltīta atvērtā koda Node.js Excel XLSX bibliotēka, kas nodrošina vienkāršu API .xlsx (Excel) failu ģenerēšanai un datu rakstīšanai uz Excel failiem straumēšanas veidā.
Kas ir Node-XLSX-Writer?
Node.js izstrādes pasaulē ģenerēt pārskatus un eksportēt datus ir bieži sastopamas prasības. Lai gan eksistē jaudīgas bibliotēkas kā exceljs, dažreiz ir vajadzīgs risinājums, kas koncentrējas tikai uz vienu uzdevumu – ātri un efektīvi rakstīt XLSX failus, neaptverot esošo failu lasīšanas vai manipulācijas pārslodzi. Šeit parādās Node-XLSX-Writer – viegla un vienkārša bibliotēka, kas izstrādāta tieši šim mērķim. Bibliotēka izceļas ar savu vienkāršību un koncentrēto funkcionalitāti. Atšķirībā no visaptverošām Excel bibliotēkām, kas apstrādā lasīšanu, rakstīšanu un manipulācijas, šis modulis koncentrējas tikai uz XLSX failu rakstīšanu, padarot to vieglu, viegli apgūstamu, ātru īstenošanu un uzticamu.
Node-XLSX-Writer ir viegla un vienkārša bibliotēka, kas izstrādāta īpaši XLSX (Excel) failu ģenerēšanai Node.js lietotnēs. Uzdevumiem, piemēram, CSV veida eksportu ar papildu Excel formatēšanas un vairāklapu atbalsta priekšrocībām (pateicoties vienkāršajai API), tā ir izcils izvēle, kas saglabās jūsu kodu tīru un aplikācijas atmiņas nospiedumu mazu. Izveidota Ruben Vermeersch un atpakaļnozīmēta no paraugu XLSX failiem, šis modulis nodrošina izstrādātājiem vienkāršu, bet efektīvu veidu, kā eksportēt datus uz Excel formātu, nevis lielāku Excel manipulācijas bibliotēku sarežģītību. Tas padara to par ideālu izvēli lietojumprogrammu vienībām, kurām jāizveido lieli pārskati no datubāzēm vai API, jo tās straumēšanas darbība nodrošina zemu atmiņas patēriņu pat ar milzīgiem datu apjomi.
Sākums ar Node-XLSX-Write
Pirms instalēt Node-XLSX-Writer, jābūt instalētām libzip izstrādes bibliotēkām jūsu sistēmā. Bibliotēka ir atkarīga no šīm sākotnējām saitēm, lai izveidotu zip failus (XLSX faili būtībā ir saspiesti XML). Lūdzu, izmantojiet šādas komandas, lai veiksmīgi instalētu.
Instalēt Node-XLSX-Write via npm
npm install --save xlsx-writerJūs varat lejupielādēt kompilētu koplietoto bibliotēku no GitHub krātuves un to instalēt.
Excel XLSX lapu izveide Node.js
Atvērtā koda Node‑XLSX‑Writer bibliotēka ietver iespējas izveidot un apstrādāt Excel XLSX failus Node.js lietojumprogrammās. Bibliotēkai nav vajadzīgs Microsoft Excel vai COM savienojums. Tā programmatiski konstruē XLSX failu (kas būtībā ir ZIP fails ar XML daļām). Tas padara to piemērotu servera puses Node.js lietošanai. Zemāk esošais koda piemērs demonstrē vienkāršāko veidu, kā izveidot Excel failu ar dažiem datiem.
Kā izveidot Excel XLSX failu Node.js lietotnēs?
// Import the library
const XLSXWriter = require('node-xlsx-writer');
// 1. Create a new instance, specifying the output file path.
const xlsx = new XLSXWriter('./output/simple_report.xlsx');
// 2. Write the header row (optional, but recommended).
xlsx.writeRow(['Name', 'Email', 'Sign-Up Date']);
// 3. Write some data rows.
xlsx.writeRow(['Alice Smith', 'alice@example.com', '2023-10-25']);
xlsx.writeRow(['Bob Johnson', 'bob.j@domain.com', '2023-10-26']);
xlsx.writeRow(['Charlie Brown', 'charlie@brown.com', '2023-10-27']);
// 4. Finalize the file. This step is crucial to save the file properly.
xlsx.finalize();
console.log('Excel file created successfully!');
Straumēšana lieliem datu kopumiem
Šeit Node‑XLSX‑Writer patiešām spīd. Tā vietā, lai ielādētu visus datus atmiņā, varat straumēt rindas pa vienai. Tas ir ideāli piemērots datu bāzes vaicājumu rezultātu apstrādei. Bibliotēka izmanto funkcijas, lai katru ierakstu izdotu no datubāzes. Mēs to nekavējoties ierakstām kā jaunu rindu Excel failā. Šī pieeja uztur atmiņas patēriņu nemainīgu, neatkarīgi no tā, vai eksportējat 100 rindas vai 1 miljonu rindas.
Kā veikt straumēšanu no datubāzes Node.js lietotnēs?
// Import the library
const XLSXWriter = require('node-xlsx-writer');
// 1. Create a new instance, specifying the output file path.
const xlsx = new XLSXWriter('./output/simple_report.xlsx');
// 2. Write the header row (optional, but recommended).
xlsx.writeRow(['Name', 'Email', 'Sign-Up Date']);
// 3. Write some data rows.
xlsx.writeRow(['Alice Smith', 'alice@example.com', '2023-10-25']);
xlsx.writeRow(['Bob Johnson', 'bob.j@domain.com', '2023-10-26']);
xlsx.writeRow(['Charlie Brown', 'charlie@brown.com', '2023-10-27']);
// 4. Finalize the file. This step is crucial to save the file properly.
xlsx.finalize();
console.log('Excel file created successfully!');
Pielāgota stilizēšana (fonts, krāsa, robežas)
Lai gan tas nav tik plašs kā pilnas funkcijas suite, atvērtā koda Node‑XLSX‑Writer bibliotēka nodrošina būtiskas stilizācijas iespējas, lai jūsu ziņojumi izskatītos profesionāli. Tā atbalsta dažādas funkcijas stilu apstrādē izklājlapās, piemēram, padarīt fontu treknu vai kursīvu, iestatīt fona krāsu un kontūras krāsu, definēt kontūras stilu (tievs, vidējs, biezs) utt. Zemāk redzams piemērs, kā programmatūras izstrādātāji var stilizēt galvenes rindu Node.js lietotnēs.
Kā piemērot stilu galvenes rindai, izmantojot Node.js bibliotēku?
const XLSXWriter = require('node-xlsx-writer');
const xlsx = new XLSXWriter('./output/styled_report.xlsx');
// Define a style object for the header
const headerStyle = {
bold: true,
background: 'FF2A52F5', // Blue background (ARGB Hex format)
color: 'FFFFFFFF', // White text
border: 'thin', // Thin border around cells
borderColor: 'FF000000' // Black border
};
// Apply the style when writing the header row
xlsx.writeRow(['Product', 'Category', 'Price', 'Stock'], headerStyle);
// Data rows are written without a style (or with a different one)
xlsx.writeRow(['Laptop', 'Electronics', 999.99, 15]);
xlsx.writeRow(['Desk Chair', 'Furniture', 249.50, 8]);
xlsx.finalize();