node-xlsx - 简单几行代码处理导入、导出 excel 表格数据,免费开源的 javascript 工具库

2023-10-27

node-xlsx - 简单几行代码处理导入、导出 excel 表格数据,免费开源的 javascript 工具库

最近开发的项目上需要把数据导出为 xlsx 文档,找了一圈,发现 node-xlsx 简单好用,分享给各位。

关于 node-xlsx

在 web 开发中,管理后台生成 excel 报表并且下载,一个很常用的功能,很多 javascript 开发者也提供了很多的这方面的工具卡来实现这一功能。今天介绍的 node-xlsx 就是一个基于 node.js 和 SheetJS 、处理 xlsx 格式的工具库。

node-xlsx github 官网

node-xlsx 的技术特性

  • 底层基于强大的 SheetJS 构建,对 xlsx 文档的格式兼容性足够好
  • 支持导出和读取 xlsx 文档,一个工具库解决导入导出需求
  • 只有少数几个 api ,使用非常简单

开发上手体验

最近在做电商后台的订单管理部分,需要将订单数据导出给运营同事,也需要导入处理好的订单报表。虽然之前也研究过用纯 javascript 来实现导出 excel 表格,但倒出来的文档的兼容性很难保证。

找了一圈,发现 node-xlsx 这个工具库,刚好能够满足功能的需求:报表字段相对简单,没有过多数据嵌套。

需要注意的是,node-xlsx 是一个 node.js 库,只能通过 npm 安装,在服务端使用:

然后在项目中引入,就可以使用了。下面的代码是通过读取二进制文件或者 buffer 来处理导入的 xlsx 文档:

默认数据的第一行就是表头,node-xlsx 还支持设定每一列的宽度和合并单元格,这样基本上就能输出数据报表了,就这么几个 api,使用非常简单!

node-xlsx 只能处理结构相对简单的数据文档,如果数据格式比较复杂,可以到 SheetJS 去查询数据格式的处理方法。不过如果想要设置单元格样式这样的功能,node-xlsx 可能就满足不了了。

免费开源说明

node-xlsx 是一个基于 SheetJS 构建的免费工具库,运行在 node.js 服务上,node-xlsx 和 SheetJS 的源码都基于 apache 2.0 开源协议托管在 Github 上,任何个人和公司都可以免费下载使用,也可以用在商业项目上。

原文链接:https://www.thosefree.com/node-xlsx

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

node-xlsx - 简单几行代码处理导入、导出 excel 表格数据,免费开源的 javascript 工具库 的相关文章

  • javascript/jquery 从选择中删除或删除选项

    在某些情况下 我需要从选择中删除选项 基本上 if mystatement true remove item with id option1 from select of id select1 有人知道我可以实现这一目标的代码吗 非常感谢
  • 从 HTML 字符串中解析和选择

    使用 ajax 调用 我返回了页面的partialView HTML 但在显示它之前 我希望从主 div 中提取信息 如果我创建一个浮动窗口 该数据只是大小信息 Code div class window details more data
  • 如何恢复文本框数据

    我有一个小小的要求 我们已经恢复了之前清除的文本框数据 下面是我的 HTML 代码 table tr td td tr table
  • 将 Regex 对象分配给 html 输入模式

    我需要以编程方式将正则表达式对象分配给输入元素模式属性 以下是我当前的实现 var regex d 5 element attr pattern regex toString slice 1 1 有没有更好的方法来做到这一点而不需要字符串操
  • 如何使用多个 select2 框过滤表格?

    我正在尝试使用 和多个 select2 框的类来过滤表格 表格 HTML table class table tbody tr class kanban event Austin td td tr tr class csm event Ch
  • 在 Node.js 中生成带条形码的 pdf

    我在用https github com devongovett pdfkit https github com devongovett pdfkit生成 PDF 文件 我可以简单地使用类似的方法 app get get pdf req re
  • 使用 Ajax Jquery post 请求进行 Json 劫持

    昨天 我读了一些关于如何预防的好文章使用 Asp Net MVC 进行 Json 劫持 http haacked com archive 2009 06 24 json hijacking aspx 规则是 永远不要通过 get 请求发送
  • jQuery:查找具有特定自定义属性的元素

    我只想找到具有特定自定义属性值的元素 例如 我想找一个div其具有属性data divNumber 6 var number 6 var myDiv data divNumber number 我尝试使用http api jquery co
  • 将时间戳转换为一个数组

    在应用程序脚本 谷歌表中运行 我从 API 获取时间戳并返回此结果 1 6370611672429312E18 1 63706107263277082E18 我执行此代码并且工作正常 但问题不在数组中 我每次都需要它在数组中 const t
  • Apache Thrift Java-Javascript 通信

    我正在编写一个基于 Apache Thrift 的 Java 服务器 它将从 Javascript 客户端接收数据 我已经完成了 Java 服务器 但问题是我可以获得 Javascript 客户端的工作示例 我无法找到一个好的示例 构建文档
  • 使用 float:left 与 display:inline-block 的 jQuery UI 拖放排序比较

    我这里有两个例子 这两个例子之间的唯一区别是 一种使用display inline block 另一种使用float left li doc item 显示 内联块 与 li doc item float left 我的问题是 displa
  • Firefox Addon 中的 JQuery 导致多个警告

    我在 Firefox 插件中使用 jquery 但我不断收到大量警告消息 如下所示 anonymous function does not always return a value System JS WARNING resource g
  • 如何知道 .keyup() 是否是字符键(jQuery)

    如何知道 keyup 是否是字符键 jQuery input keyup function if key is a character such as a b A b c 5 3 2 etc not enter key or shift o
  • 从链接打开本地文件夹

    如何通过单击任何链接打开本地文件夹视图 我尝试了很多选择 例如 a href Open folder a or a Open folder a or a Open folder a 解决方案 启动可下载链接 以下内容适用于所有浏览器 但一如
  • 如何从 CSS 选择器中提取类名?

    故事 我目前正在构建一个 ESLint 规则 以警告在 CSS 选择器定位器中使用引导布局导向和角度技术类 目前我在字符串方法中使用简单的子字符串 for var i 0 i lt prohibitedClasses length i if
  • 了解 Document.createElement()

    我在用着GWT及其底层DOM能力 我基本上想要实现的是 Have a div包含一些文本的元素 其中一些文本将被包围span元素 span 元素可相互拖动并提供上下文菜单 New span元素可以由最终用户动态创建 它可能是这样的 在应用程
  • Google 地图 API - 地图未显示 - 没有错误

    我正在尝试将地图从 Google API 加载到 div 中 但是 地图未加载 并且没有输出任何错误 这是代码 google maps var geocoder map function codeAddress address geocod
  • onPress 方法中箭头函数与普通函数的行为

    正在学习 Native React 并学习更多关于 javascript 的知识 所以我仍然不明白它的行为的很多事情 我使用 TouchableOpacity 及其 onPress 属性创建了一个按钮组件 为了让它工作 我必须发送我想要执行
  • jQuery Mobile + Admob:轮换?

    我使用 jQuery Mobile 框架创建了一个移动应用程序 所有页面都在index php中加载 使用 div 在每个页面的页脚中 我添加了Admob代码 div div div
  • JavaScript 阶乘防止无穷大

    我一直在 JavaScript 中使用这个函数来计算阶乘数 var f function factorial n if n 0 n 1 return 1 if f n gt 0 return f n return f n factorial

随机推荐

  • 解决python安装模块出现WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)

    你的系统时间不对 启动ntpd服务同步网络时间
  • 串联法和故事法

    课程目的 1 掌握串联法 掌握故事法 举例 老鼠一苹果一毛毛中一手表一鸭子 老鼠吃了一个苹果 苹果掉下来砸到了一条毛毛虫 毛毛虫带着手表 手表勒住了一只鸭子 1 串联法和故事法的区别 串联法 提到老鼠 只想到苹果 提到苹果 只想到毛毛虫 提
  • CTeX使用全过程

    最近投稿时编辑部给的模板居然是古老的CCT Mac OS的我直接懵逼了 这也让我重新翻出来那台8年前的Dell 期中也遇到了一系列的问题 现在解决了就Mark一下吧 养成好习惯 CTeX C T e X CTeX CTeX是什么 CTEX是
  • C++核心编程:内存分区模型

    C 程序在执行时 将内存大方向划分为4个区域 代码区 存放函数体的二进制代码 由操作系统进行管理的 全局区 存放全局变量和静态变量以及常量 栈区 由编译器自动分配和释放 存放函数的参数值 局部变量等 堆区 由程序员分配和释放 若程序员不释放
  • 小程序嵌入网页向小程序跳转并传参,微信小程序中实现公众号授权获取openId

    大家好 我是小编鹏仔 近期给学校用uniapp开发了一款校园小程序 小程序有一些活动 咨询 公告 请假等通知 需要通过微信推送提示 用小程序自己的订阅方法有一些限制 于是需求这边想用绑定的学校公众号推送 因为小程序获取用户的openId和公
  • C语言编写求最大值及其下标

    本题要求编写程序 找出给定的n个数中的最大值及其对应的最小下标 下标从0开始 输入格式 输入在第一行中给出一个正整数n 1
  • 在windows的命令行窗口打开.ipynb文件

    例如 在Windows10操作系统中 通过命令行窗口打开H github路径下的my ipynb文件 那么在CMD窗口输入以下红色命令 base C Users xxx gt cd H github base C Users xxx gt
  • CVPR 2021

    DMSANet Dual Multi Scale Attention Network paper https arxiv org pdf 2106 08382 pdf code https github com abhinavsagar D
  • Python官方中文文档上线,Pythoner快收藏福利!

    参加 2019 Python开发者日 请扫码咨询 编辑 suiling 出品 Python大本营 ID pythonnews 各位学 Python 的小伙伴们马上就要到激动人心的时刻了 因为 因为 Python 官方中文文档上线了 不仅有
  • 量化交易之QT篇 - 设置窗口大小、标题、icon(画背景图片)

    MainScens h ifndef MAINSCENS H define MAINSCENS H include
  • 命令指示符操作

    1 复制操作 选中 enter键
  • js中大括号{}的遍历每一项操作

    话不多说直接上例子 循环遍历每一项
  • 分布式数据库 Join 查询设计与实现浅析

    相对于单例数据库的查询操作 分布式数据查询会有很多技术难题 本文记录 Mysql 分库分表 和 Elasticsearch Join 查询的实现思路 了解分布式场景数据处理的设计方案 文章从常用的关系型数据库 MySQL 的分库分表Join
  • Docker大纲

    Docker Docker 概述 Docker 安装 Docker 命令 容器命令 镜像命令 操作命令 Docker 操作 Docker 容器数据卷 DockerFile Docker 网络原理 Idea整合Docker Docker Co
  • Brew下载慢解决办法

    在利用brew install xxx进行软件安装的时候 brew会把临时的下载文件放在cache目录下 可以通过 brew cache 查看下载的缓存目录 默认的缓存目录为 Users Library Caches Homebrew Ca
  • 围绕开源的系列思考——国家篇

    点击上方 开源社 关注我们 作者 庄表伟 编辑 陈梅梅 责编 Corrie 从穿越小说聊起 我非常喜欢看各种网络小说 其中最大的一类 自然是穿越小说 其中又可以细分为很多类型 按照穿越回到的时代 从远古到近现代的都有 这其中有一个很小的分类
  • 记一次JVM Full GC 引发的线上故障,真是坑!

    这篇文章给大家聊一次线上生产系统事故的解决经历 其背后代表的是线上生产系统的JVM FullGC可能引发的严重故障 一 业务场景介绍 先简单说说线上生产系统的一个背景 因为仅仅是文章作为案例来讲 所以弱化大量的业务背景 简单来说 这是一套分
  • MIPI D-PHY的校准测试

    MIPI的校准环节类似于DDR中的读写训练 其目的都是为了满足最佳的眼图采样时刻 因此 在系统的传输速率很高 通道之间存在延时 设计中有外部干扰等等影响因素的时候 信号抖动将会被增强 此时 校准将对长时间的稳定运行起到关键的补偿作用 在MI
  • 2021年常见web前端面试题

    1 Vue实现数据双向绑定的原理是什么 2 这些年解决过那些困难问题 3 平时通过什么途径提升自己 4 vue响应式原理 5 prosy的优缺点 6 怎样监听数组 7 计算属性和watch的区别 8 vueX简述 9 vuex可以做什么 1
  • node-xlsx - 简单几行代码处理导入、导出 excel 表格数据,免费开源的 javascript 工具库

    最近开发的项目上需要把数据导出为 xlsx 文档 找了一圈 发现 node xlsx 简单好用 分享给各位 关于 node xlsx 在 web 开发中 管理后台生成 excel 报表并且下载 一个很常用的功能 很多 javascript