Open xgqfrms opened 4 years ago
// export-excel.js "use strict"; /** * @description export table to excel with HTML5 Bolb! * @author xgqfrms 2018.02.05 * @param {String} type * @param {String} uid * @param {String} title * @param {Boolean} debug */ const exportExcel = ( uid = `data-table`, title = `excel-title`, type = `xlsx`, debug = false ) => { if (debug) { console.log(`uid= `, uid); console.log(`type = `, type); console.log(`title = `, title); } // fixed bug: error = Error: Sheet names cannot exceed 31 chars const short_mock_title = `xgqfrms`; let result = ``; try { let elt = document.querySelector(uid), wb = XLSX.utils.table_to_book( elt, { // sheet: "Sheet JS",// excel sheet name // sheet: title, // fixed bug: error = Error: Sheet names cannot exceed 31 chars sheet: short_mock_title, } ); if (debug) { console.log(`document.querySelector(uid) = `, elt); } result = XLSX.writeFile( wb, `${title}.${type}`, // `${short_mock_title}.${type}`, ); // console.log(`result =`, result); // bolb // bolb to url // true title name return result; } catch (error) { console.log(`export error = `, error); } }; export {exportExcel}; export default exportExcel;
export-excel.js