Luckysheet如何一键导入本地Excel
阅读之前
现在导入已经有Luckexcel支持,欢迎试用反馈:
Luckyexcel
这篇文章的部分API已不开放,但是仍然在源码里,这里仅供参考作用,直接复制粘贴跑不起来。
问题
Luckysheet是一款功能很丰富的在线电子表格插件,但是初始版本暂时不支持excel导入导出.笔者结合身边朋友的经验,给出案例供参考.
解决方案
通过sheetJs将导入的excel文件转换成Luckysheet能够支持的数据格式即可
操作步骤
- 参照官网教程,先打包源代码,得到Luckysheet核心文件,并在在项目主页引入Luckysheet依赖的js,css,和sheetJs插件xlsx.full.min.js
- 页面准备,渲染一个空白的Luckysheet,
input file
监听Excel文件上传,通过sheetJs将导入的数据转换成Luckysheet能够识别的格式
// 渲染一个空白的Luckysheet
$(function () {
luckysheet.create({
container: 'luckysheet'
})
})
// 监听文件上传
var input = document.querySelector('input');
input.addEventListener('change', importExcel);
- 通过sheetJs将导入的excel数据转换成html table格式数据,使用从luckysheet中抽出来的数据转换方法, 转换为Luckysheet可识别的格式
// 获取excel数据
function importExcel(event) {
var file = event.target.files[0];
/* 实例FileReader对象 */
//other code...
}
// 解析excel数据
function readFile(txtdata) {
$("#luckysheet-copy-content").html(txtdata);
//other code...
}
代码参考
luckysheet import excel
探讨
仅前端文件导入是不带单元格样式的,但是从excel复制单元格到Luckysheet是带单元格样式的.可以从 在线demo 尝试下.
目前Luckysheet功能正在完善中,可以逐步关注.