本项目原始版本从 x-spreadsheet 而来,以可以在浏览器中操作Excel文件为方向进行修改。
致敬x-spreadsheet
可扩展行列可分开配置
extensible.enableAll 控制扩展
extensible.enableRow 控制行扩展
extensible.enableCol 控制列扩展
增加权限控制
privileges.editable 控制文档可编辑
privileges.dataEdit 控制文档数据可编辑
privileges.editable 控制文档格式可编辑
- 增加导出工具 xlsx-exporter 位于 /utis/excel/xlsx-exporter
- 导入工具更名为 xlsx-importer 位于/utis/excel/xlsx-importer
- 相关API
import ExcelParser from '/utils/excel/xlsx-importer'; import ExcelExport from '/utils/excel/xlsx-exporter'; const parser = new ExcelParser(); parser.parse(arrayBuffer).then(data => { // do something with data }); const exporter = new ExcelExport(); exporter.setData(data).exportWithBuffer().then(arrayBuffer => { // do something with arraybuffer });
- 增加sheet编辑权限
privileges.sheetEdit 控制文档sheet可增删、重命名
- 修复一些bug
- 修复更改行高、列宽、隐藏行、隐藏列不触发onchange和历史记录的bug
- spreadsheet对象增加setData方法,用于用户对onchange获取的sheets数据的回设
- 修复因exceljs库无法读取indexedColor表导致的读取indexedColor颜色不正确的问题
- 新功能: 增加自定义菜单功能。
- 相关API
new Spreadsheet().setCustomMenu([ { key:'test', title:'测试', handler:(key, target, sheet)=>{ console.log(key,target,sheet) } } ]);
- 修复回调data某些情况下不正确的bug
- 修复为data增加属性,回调不显示的bug
- 修复若干bug
- 将'on***'等回调方法参数改为DataAgent对象,提供一些API,方便开发者操作表格
- 增加onLoad回调(表格初始化完成后回调)。
- 修复dataAgent.getData()导出过多属性导致history数据递归增加引发崩溃的bug
- 修复cells-selected事件疯狂触发的bug
- 为Range增加了mode属性
- 'range': 选中的区域为单元格区域
- 'row': 选中的区域为行头
- 'col': 选中的区域为列头
- 改进并完善0.0.15修复的cells-selected事件
- 修复:tooltip特定条件下不消失
- 修复:修复撤销/重做不触发change事件
- 修复若干bug
- 优化滚动
- 增加显示批注的功能,尚未实现UI层面增加和编辑批注
- 修复若干bug
- 日常修复bug
- 完善BottomBar功能,增加缩放功能
- 日常修复bug
- 优化缩放功能
- 使缩放触发onchange回调
- 修复FireFox不能滚动页面的bug
- 临时性优化缩放后单元格位置,下个版本准备重写scrollbar
- 重写scrollbar
- 修复comment换行问题
- 修复其他一些小问题
- 双击列头边缘自动调整最适宽度
- 修复一些小问题
- 修复自动调整列宽度的一些bug
- 增加从excel粘贴功能
- 修复bind window上的事件导致的内存泄漏的问题
新增:公式支持(测试版)
支持SUM公式和加减(测试版)
修复四则运算小数不精确的问题
- 修复含有公式的单元格无法清空内容的bug
修复一些已知bug
增加富文本显示(支持导入和导出,未实现编辑),优化单元格水平和垂直对齐方式
修复富文本导出样式丢失的问题
修复富文本导入时的漏洞
修复富文本某些片段没有颜色时默认颜色的问题
修复删除合并单元格首行(首列)时的问题
修复删除合并单元格导致坐标为负产生的渲染卡死问题