如何使用js-xlsx之单元格样式
这次给大家带来如何使用js-xlsx之单元格样式,使用js-xlsx之单元格样式的注意事项有哪些,下面就是实战案例,一起来看一下。
下载xlsx-style
npm install xlsx-style
xlsx-style核心模块 在 你安装路径\node_modules\xlsx-style\dist
2.示例代码
复制出 文件xlsx.full.min.js
编写示例代码:
<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>示例</title></head><body> <script src="./xlsx.full.min.js"></script> <script> function saveAs(obj, fileName) { var tmpa = document.createElement("a"); tmpa.download = fileName || "下载"; tmpa.href = URL.createObjectURL(obj); tmpa.click(); setTimeout(function () { URL.revokeObjectURL(obj); }, 100); } var jsono = [{ "id": 1, "合并的列头1": "数据11", "合并的列头2": "数据12", "合并的列头3": "数据13", "合并的列头4": "数据14", }, { "id": 2, "合并的列头1": "数据21", "合并的列头2": "数据22", "合并的列头3": "数据23", "合并的列头4": "数据24", }]; const wopts = { bookType: 'xlsx', bookSST: true, type: 'binary', cellStyles: true }; function downloadExl(json, type) { var tmpdata = json[0]; json.unshift({}); var keyMap = []; //获取keys for (var k in tmpdata) { keyMap.push(k); json[0][k] = k; } var tmpdata = [];//用来保存转换好的json json.map((v, i) => keyMap.map((k, j) => Object.assign({}, { v: v[k], position: (j > 25 ? getCharCol(j) : String.fromCharCode(65 + j)) + (i + 1) }))).reduce((prev, next) => prev.concat(next)).forEach((v, i) => tmpdata[v.position] = { v: v.v }); var outputPos = Object.keys(tmpdata); //设置区域,比如表格从A1到D10 tmpdata["B1"].s = { font: { sz: 14, bold: true, color: { rgb: "FFFFAA00" } }, fill: { bgColor: { indexed: 64 }, fgColor: { rgb: "FFFF00" } } };//<====设置xlsx单元格样式 tmpdata["!merges"] = [{ s: { c: 1, r: 0 }, e: { c: 4, r: 0 } }];//<====合并单元格 var tmpWB = { SheetNames: ['mySheet'], //保存的表标题 Sheets: { 'mySheet': Object.assign({}, tmpdata, //内容 { '!ref': outputPos[0] + ':' + outputPos[outputPos.length - 1] //设置填充区域 }) } }; tmpDown = new Blob([s2ab(XLSX.write(tmpWB, { bookType: (type == undefined ? 'xlsx' : type), bookSST: false, type: 'binary' }//这里的数据是用来定义导出的格式类型 ))], { type: "" }); saveAs(tmpDown, "这里是下载的文件名" + '.' + (wopts.bookType == "biff2" ? "xls" : wopts.bookType)); } function getCharCol(n) { let temCol = '', s = '', m = 0 while (n > 0) { m = n % 26 + 1 s = String.fromCharCode(m + 64) + s n = (n - m) / 26 } return s } function s2ab(s) { if (typeof ArrayBuffer !== 'undefined') { var buf = new ArrayBuffer(s.length); var view = new Uint8Array(buf); for (var i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF; return buf; } else { var buf = new Array(s.length); for (var i = 0; i != s.length; ++i) buf[i] = s.charCodeAt(i) & 0xFF; return buf; } } </script> <button onclick="downloadExl(jsono)">导出</button></body></html>
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
相关阅读:
以上是如何使用js-xlsx之单元格样式的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

如何使用WebSocket和JavaScript实现在线语音识别系统引言:随着科技的不断发展,语音识别技术已经成为了人工智能领域的重要组成部分。而基于WebSocket和JavaScript实现的在线语音识别系统,具备了低延迟、实时性和跨平台的特点,成为了一种被广泛应用的解决方案。本文将介绍如何使用WebSocket和JavaScript来实现在线语音识别系

WebSocket与JavaScript:实现实时监控系统的关键技术引言:随着互联网技术的快速发展,实时监控系统在各个领域中得到了广泛的应用。而实现实时监控的关键技术之一就是WebSocket与JavaScript的结合使用。本文将介绍WebSocket与JavaScript在实时监控系统中的应用,并给出代码示例,详细解释其实现原理。一、WebSocket技

自动从Excel工作簿中删除前导零是否令人沮丧?当您在单元格中输入数字时,Excel通常会删除数字前面的前导零。默认情况下,它将缺少显式格式的单元格条目视为数值。前导零在数字格式中通常被认为是无关紧要的,因此被省略。此外,前导零可能会在某些数值运算中造成问题。因此,零被自动删除。本文将教你如何在Excel中保留前导零,以确保输入的帐号、邮政编码、电话号码等数字数据格式正确。在Excel中,如何允许数字前面有零?您可以在Excel工作簿中保留数字的前导零,有多种方法可供选择。您可以通过设置单元格格

如何利用JavaScript和WebSocket实现实时在线点餐系统介绍:随着互联网的普及和技术的进步,越来越多的餐厅开始提供在线点餐服务。为了实现实时在线点餐系统,我们可以利用JavaScript和WebSocket技术。WebSocket是一种基于TCP协议的全双工通信协议,可以实现客户端与服务器的实时双向通信。在实时在线点餐系统中,当用户选择菜品并下单

如何使用WebSocket和JavaScript实现在线预约系统在当今数字化的时代,越来越多的业务和服务都需要提供在线预约功能。而实现一个高效、实时的在线预约系统是至关重要的。本文将介绍如何使用WebSocket和JavaScript来实现一个在线预约系统,并提供具体的代码示例。一、什么是WebSocketWebSocket是一种在单个TCP连接上进行全双工

WPS软件作为文字,文档处理必不可少的帮手,在实际应用操作中,经常需要在单元格里进行操作,处理文字,文档,关于单元格的知识有很多。今天就让小编介绍一下关于WPS一个单元格怎么分成两个的具体操作步骤。1.首先我们打开需要编辑的WPS表格,选择需要将一个单元格分成两个的单元格文档。2.点击打开数据中的“分列”。3.然后在弹出来的窗口中选择“固定宽度”,点击“下一步”。4.在弹出来的窗口中点击需要分列的地方,回车确定。举一反三,此时如果需要改为3个,也可以将数字改为3。5.然后点击完成。6.还有一种方

JavaScript和WebSocket:打造高效的实时天气预报系统引言:如今,天气预报的准确性对于日常生活以及决策制定具有重要意义。随着技术的发展,我们可以通过实时获取天气数据来提供更准确可靠的天气预报。在本文中,我们将学习如何使用JavaScript和WebSocket技术,来构建一个高效的实时天气预报系统。本文将通过具体的代码示例来展示实现的过程。We

本文将演示如何在Excel中对多个工作表中的单元格进行求和。MicrosoftExcel是一个功能强大的电子表格程序,用于数据管理。在处理数据时,可能需要跨多个单元格进行求和。本指南将指导您如何轻松实现这一目标。如何在Excel中对多个工作表中的单元格求和在Excel中对多个工作表中的单元格求和时,可能会遇到以下两种情况:添加单个单元格值在单元格区域中添加值我们将在这里介绍这两种方法。在Excel中跨多个工作表添加单个单元格值我们收集了包含6家不同公司在连续四个月(从1月到4月)的销售额的样本数
