I am trying and banging my head already while trying to read excel file in Reactjs.
I have tried multiple libraries out there like, Sheetjs , excel-parser, exceljs and so on (like 8-9) libraries.
I am getting weird and different errors in every library.
For example i am using excel-parser and getting following error
Module not found: 'child_process'
That is because it is a node module and won’t work in browser.
Anyone know some good and easy library that can work with reactjs in browser?
Advertisement
Answer
I have successfully read excel file using Sheetjs‘s npm version xlsx.
Here is code:
import * as XLSX from 'xlsx'; //f = file var name = f.name; const reader = new FileReader(); reader.onload = (evt) => { // evt = on_file_select event /* Parse data */ const bstr = evt.target.result; const wb = XLSX.read(bstr, {type:'binary'}); /* Get first worksheet */ const wsname = wb.SheetNames[0]; const ws = wb.Sheets[wsname]; /* Convert array of arrays */ const data = XLSX.utils.sheet_to_csv(ws, {header:1}); /* Update state */ console.log("Data>>>"+data); }; reader.readAsBinaryString(f);