x-spreadsheet——Web端优秀的Javascript电子表格

2019-07-15 00:13发布

引言

x-spreadsheet是一款开源的基于Web的Javascript电子表格,在Github获得6k+的star,它在功能上有点类似于google sheet,可以说是简化版的web excel,虽然没excel那么强大,但也能够应付一些需求了。

Github和体验地址

Github:https://github.com/myliang/x-spreadsheet

DEMO:https://myliang.github.io/x-spreadsheet/

安装

提供两种方式

  • 直接引用(使用cdn或者下载到本地)


  • NPM安装
npm install x-data-spreadsheet

使用方式



在浏览器运行结果如图:

或者你也可以使用模块化的方式使用

import Spreadsheet from "x-data-spreadsheet";
// If you need to override the default options, you can set the override
// const options = {};
// new Spreadsheet('#x-spreadsheet-demo', options);
const s = new Spreadsheet("#x-spreadsheet-demo")
.loadData({}) // load data
.change(data => {
// save data to db
});
// data validation
s.validate()

所有默认的配置

{
showToolbar: true,
showGrid: true,
showContextmenu: true,
view: {
height: () => document.documentElement.clientHeight,
width: () => document.documentElement.clientWidth,
},
row: {
len: 100,
height: 25,
},
col: {
len: 26,
width: 100,
indexWidth: 60,
minWidth: 60,
},
style: {
bgcolor: '#ffffff',
align: 'left',
valign: 'middle',
textwrap: false,
strike: false,
underline: false,
color: '#0a0a0a',
font: {
name: 'Helvetica',
size: 10,
bold: false,
italic: false,
},
},
}

国际化






或者

// npm 
import Spreadsheet from 'x-data-spreadsheet';
import zhCN from 'x-data-spreadsheet/dist/locale/zh-cn';
Spreadsheet.locale('zh-cn', zhCN);
new Spreadsheet(document.getElementById('xss-demo'));

上图是我测试中文的

功能

它包含了一些基本用得到的功能

  • 撤销和重做
  • 背景色
  • 格式清除
  • 格式化
  • 字型
  • 字体大小
  • 字体粗体
  • 字体斜体
  • 下划线
  • 删除线
  • 文本颜色
  • 填充颜色
  • 边界
  • 合并单元格
  • 对齐
  • 文本换行
  • 固定单元格
  • 函数
  • 调整尺寸行高,宽
  • 复制,剪切,粘贴
  • 自动填充
  • 插入行、列
  • 删除行、列
  • 数据验证

完整实例代码,可直接运行








x-spreadsheet













兼容性

支持主流浏览器(chrome, firefox, Safari),Edge貌似有问题,本地测试未通过

总结

值得注意的是在Github提供的cdn中版本号较低,在国际化的时候会出现错误,因此在更改官网的cdn版本至1.0.21即可,可以直接使用我上面更改后的,已经亲自测试过,如果你觉得它对你有帮助,请麻烦点赞、转发加关注哟!后续更多实用技巧和工具等着你!

文章来源: https://www.toutiao.com/group/6691289202182586894/