ऊपर दिए गए उत्तर के लिए धन्यवाद, मुझे लगता है कि दायरा (उत्तरों का) पूरा हो गया है, लेकिन मैं प्रतिक्रिया का उपयोग करने वाले लोगों के लिए "प्रतिक्रिया तरीका" जोड़ना चाहूंगा।
ImportData.js नामक एक फ़ाइल बनाएँ:
import React, {Component} from 'react';
import XLSX from 'xlsx';
export default class ImportData extends Component{
constructor(props){
super(props);
this.state={
excelData:{}
}
}
excelToJson(reader){
var fileData = reader.result;
var wb = XLSX.read(fileData, {type : 'binary'});
var data = {};
wb.SheetNames.forEach(function(sheetName){
var rowObj =XLSX.utils.sheet_to_row_object_array(wb.Sheets[sheetName]);
var rowString = JSON.stringify(rowObj);
data[sheetName] = rowString;
});
this.setState({excelData: data});
}
loadFileXLSX(event){
var input = event.target;
var reader = new FileReader();
reader.onload = this.excelToJson.bind(this,reader);
reader.readAsBinaryString(input.files[0]);
}
render(){
return (
<input type="file" onChange={this.loadFileXLSX.bind(this)}/>
);
}
}
तब आप रेंडर विधि में घटक का उपयोग कर सकते हैं जैसे:
import ImportData from './importData.js';
import React, {Component} from 'react';
class ParentComponent extends Component{
render(){
return (<importData/>);
}
}
<ImportData/>
अपनी ही राज्य के लिए डेटा सेट होता है, यदि आप Excel डेटा "जनक घटक" में पालन करके उपयोग कर सकते हैं इस :