LOGO 首页 OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 技术文档 其他文档  
 
网站管理员

[点晴永久免费OA]基于 JavaScript 快速构建 Web Excel,极简、高效、配置简单

admin
2026年8月10日 12:20 本文热度 154

一、开源项目简介

基于 JavaScript 快速构建 Web Excel

极简、高效、配置简单

这是一个基于 Web(es6) canvas 构建的轻量级 Excel 开发库。

二、开源协议

使用MIT开源协议

三、界面展示

四、功能概述

轻量级

完整功能,包含所有插件。代码打包后只不到 200kb

易于使用

如果只需要一些简单的功能可以零配置

数据驱动

调整数据非常的简单快捷

基础功能

已经支持下列功能

  • 撤销重做

  • 添加行列

  • 删除行列

  • 隐藏行列

  • 动态调整行列功能

  • 冻结行列

  • 添加边框/颜色/边框线条样式

  • 合并单元格

  • 复制

  • 粘贴

  • 打印

  • 公式

  • 筛选

  • 自动填充

  • 多表支持

  • 字体样式

  • 自定义字体/大小/颜色

  • 填充前景色/背景色

  • 格式校验

  • 对齐方式

  • 文字换行

五、技术选型

快速入门开发

CDN

你可以直接在 html 静态文件中引入

<link rel="stylesheet" href="https://unpkg.com/x-data-spreadsheet@1.1.9/dist/xspreadsheet.css"> 
<script src="https://unpkg.com/x-data-spreadsheet@1.1.9/dist/xspreadsheet.js">
</script>
<script>
 x_spreadsheet("#xspreadsheet");
</script>

NPM

你可以使用 npm 包的形式安装

# 基于项目构建  npm install x-data-spreadsheet

在 html 中

<div id="x-spreadsheet-demo"></div>

在 js 中

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
validations.validate()

默认配置

{  mode: "edit", // edit | read  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,    },  },}

导入和导出

关于如何导出,请查看 如果需要自定义导出,可以使用 SheetJs 来完成导出,并且再次感谢

绑定事件

简单的事件绑定

const s = new Spreadsheet("#x-spreadsheet-demo") // event of click on cell
s.on("cell-selected", (cell, ri, ci) => {});
s.on("cells-selected", (cell, { sri, sci, eri, eci }) => {}); // edited on cell
s.on("cell-edited", (text, ri, ci) => {});

快速设定单元格值

通过instance.cellText(ri,ci,text)来设定值,调用reRender()来刷新,你将会看到数据的变化

const s = new Spreadsheet("#x-spreadsheet-demo");
s.cellText(5, 5, "xxxx").cellText(6, 5, "yyy").reRender();

获取选定表格中单元的样式和值

const s = new Spreadsheet("#x-spreadsheet-demo")
// cell(ri, ci, sheetIndex = 0)
s.cell(ri, ci);
// cellStyle(ri, ci, sheetIndex = 0)
s.cellStyle(ri, ci);

快速本地化

如果是在 js 中引入

如果遇到更多问题,可以查看 issue #281

// 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"))

可以使用 CDN

<!-- Import via CDN -->
<link rel="stylesheet" href="https://unpkg.com/x-data-spreadsheet@1.1.9/dist/xspreadsheet.css">
<script src="https://unpkg.com/x-data-spreadsheet@1.1.9/dist/xspreadsheet.js"></script>
<script src="https://unpkg.com/x-data-spreadsheet@1.1.9/dist/locale/zh-cn.js"></script>
<script>
 x_spreadsheet.locale("zh-cn");
</script>

加入开发者

# 拉取<repo>
 访问一飞开源:https://code.exmay.com/ 下载  
# 进入项目开发目录
 cd x-spreadsheet  
# 安装相关依赖
 npm install  
# just do it
 npm run dev

浏览器支持

chrome, firefox, Safari


阅读原文:点击这里


该文章在 2026/8/10 12:27:09 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2026 ClickSun All Rights Reserved  粤ICP备13012886号-1  粤公网安备44030602007207号