Fixed the ouput and variable and updated function

This commit is contained in:
Sambo Chea 2021-03-30 11:47:54 +07:00
parent 201be2179e
commit e1ebbf67d8
4 changed files with 13 additions and 24 deletions

View File

@ -1,18 +1 @@
{ {}
"data": [
{
"dataIndex": "Name",
"label": "Name"
},
{
"dataIndex": "Age",
"label": "Age"
}
],
"configs": {
"outputPath": "./data/outputs/exported",
"outputName": "my_exported_data",
"sheetName": "Sheet1",
"saveToOutput": true
}
}

View File

@ -8,8 +8,7 @@ function _internalExport(props = {}) {
console.log("Name =>", NAME, "\n"); console.log("Name =>", NAME, "\n");
// load from env // load from env
const INPUT_FILE = const INPUT_FILE = props.inputFile || process.env.INPUT_FILE;
props.inputFile || process.env.INPUT_FILE || "./data/people.xlsx";
const OUTPUT_PATH = const OUTPUT_PATH =
props.outputPath || process.env.OUTPUT_PATH || "./data/outputs"; props.outputPath || process.env.OUTPUT_PATH || "./data/outputs";
const MAPPER_FILE = const MAPPER_FILE =
@ -31,16 +30,21 @@ function _internalExport(props = {}) {
} }
); );
} catch (err) { } catch (err) {
console.error("read file error", err); // console.error("read file error", err);
} }
// convert mapper from string to json object // convert mapper from string to json object
const mapperJson = mapperString ? JSON.parse(mapperString) : {}; const mapperJson = mapperString ? JSON.parse(mapperString) : {};
const configs = { ...mapperJson.configs, ...props }; const configs = { ...mapperJson.configs, ...props };
const columsData = props.mappings || mapperJson.data || undefined; const columsData = props.mappings || mapperJson.data || undefined;
const inFile = configs.inputFile || INPUT_FILE;
if (!inFile) {
throw Error("Input file is required!");
}
// read workbook from excel file // read workbook from excel file
const wb = XLSX.readFile(configs.inputFile || INPUT_FILE); const wb = XLSX.readFile(inFile);
const xlData = XLSX.utils.sheet_to_json( const xlData = XLSX.utils.sheet_to_json(
wb.Sheets[configs.sheetName || SHEET_NAME] wb.Sheets[configs.sheetName || SHEET_NAME]
); );

View File

@ -2,7 +2,9 @@
const excel2json = require("./excel2json"); const excel2json = require("./excel2json");
// called function export excel2json // called function export excel2json
const exported = excel2json(); const exported = excel2json({
inputFile: "./data/people.xlsx"
});
// output data from exported // output data from exported
console.log("Output =>\n", exported); console.log("Output =>\n", exported);

View File

@ -1,6 +1,6 @@
{ {
"name": "excel2json-xlsx", "name": "excel2json-xlsx",
"version": "1.0.1", "version": "1.0.2",
"keywords": [ "keywords": [
"excel", "excel",
"json", "json",