sheetjs官网https://docs.sheetjs.com/docs/

第一种方案 如果在标签里面加

vue scope 会在
标签里面加版本号(编译的时候加版本号)下载下来不分行

// let nodeBr = document.createElement("br")// let dataV = document.getElementById("exportTable").attributes[0].name;// nodeBr.setAttribute(dataV, "");

第二种方案

// 把需要换行的改为<br/>
// 不需要处理版本号
if (String(num).indexOf('#@#') !== -1) {return String(num).replaceAll('#@#', '<br/>');} else {return num}

前端下载代码

// props table (id) name(下载下来excel格式)

<template><el-buttontype="success"size="mini"icon="el-icon-upload" @click="exportEvent">导出</el-button>
</template><script>
import FileSaver from "file-saver";
import * as XLSX from 'xlsx'
import {omit, handelNewWs} from "../../../utils/data";export default {name: "DERIVE.vue",data() {return {ws:'',grid:'',};},//需要的参数props: {id: {type: String,default: "Table",},name: {type: String,default: "Table",},},methods: {wsHandel() {this.grid = XLSX.utils.table_to_book(document.querySelector("#" + this.id),);this.ws = this.grid.Sheets["Sheet1"];let gatherData = {raw: true};let grid1 = XLSX.utils.table_to_book(document.querySelector("#" + this.id),gatherData);let ws1 = grid1.Sheets["Sheet1"];const newWs1=omit(ws1,'!rows','!cols','!fullref','!ref')  // 取出表格对象中用不到的const handelNewWsArr = handelNewWs(newWs1)  //对象变数组const reg= /[!~@#$&><=]+/gi  // 验证里面是否含有~@#$&const  that =thishandelNewWsArr.forEach(item => {const v =item['v']  // 表格值const vKey=item['key'] //表格A1 A2if(v){// 处理%if( v.indexOf('%')!=-1){if(!reg.test(v) ){if(v.indexOf('.')!=-1){  // 处理%有小数点this.ws[vKey].z = "0.00%"; //  format the celldelete this.ws[vKey].w;XLSX.utils.format_cell(that.ws[vKey]); // refresh cell}else{  // 处理%没有小数点this.ws[vKey].z = "0%"; //  format the celldelete this.ws[vKey].w;XLSX.utils.format_cell(that.ws[vKey]); // refresh cell}}}else{if(parseFloat(v)!='NAN'){if(v.indexOf('.')!=-1){this.ws[vKey].z = "0.00"; //  format the celldelete this.ws[vKey].w;XLSX.utils.format_cell(that.ws[vKey]); // refresh cell}else{this.ws[vKey].z = "0"; //  format the celldelete this.ws[vKey].w;XLSX.utils.format_cell(that.ws[vKey]);}}}}})},// 导出Excel表格事件exportEvent() {const that=thisthis.wsHandel()let workbook = XLSX.write(this.grid, {bookType: "xlsx",bookSST: true,type: "array",});try {FileSaver.saveAs(new Blob([workbook], {type: "application/octet-stream;charset=utf-8",}),that.name + ".xlsx",);} catch (e) {if (typeof console !== "undefined") console.log(e, workbook);}return workbook;},}
}
</script><style scoped></style>

前端下载sheetjs处理\n \r 实现换行相关推荐

  1. 这应该是你见过的最全前端下载总结

    这应该是你见过的最全前端下载总结 frontend-download-sample 自己整理的一些项目中遇到过的关于上传和下载的一些Demo,大前端系列(也就是纯前端 + node端完成的下载,只要获 ...

  2. 【web】【django】datatable的button扩展实现纯前端下载和copy指定列内容,以及django的HTTPResponse实现下载功能

    Table of Contents 功能需求描述 一 使用Datatables实现纯前端下载.拷贝 二 query db 实现下载(django) 功能需求描述 用户需要以网页为媒介,从DB里拉取一些 ...

  3. 纯前端下载 csv 格式文件

    纯前端下载 csv 文件 table 数据 data() {return {header: [{_id: '01',label: '姓名',prop: 'name',},{_id: '02',labe ...

  4. 前端下载利器FileSaver

    前言:想必很多小伙伴都用过 a标签拿来下载的吧,里面很多坑相信也知道了,用起来真的是超级简单.使用方法如下: href: 文件的绝对/相对地址download: 文件名(可省略,省略后浏览器自动识别源 ...

  5. 纯前端下载pdf链接文件,而不是打开预览的解决方案

    纯前端下载pdf链接文件,而不是打开预览的解决方案 参考文章: (1)纯前端下载pdf链接文件,而不是打开预览的解决方案 (2)https://www.cnblogs.com/jackson-yqj/ ...

  6. 前端下载二进制流文件

    更多文章 平时在前端下载文件有两种方式,一种是后台提供一个 URL,然后用 window.open(URL) 下载,另一种就是后台直接返回文件的二进制内容,然后前端转化一下再下载. 由于第一种方式比较 ...

  7. new blob文件设置编码_前端下载文件amp;下载进度

    前端最基础的就是 HTML+CSS+Javascript.掌握了这三门技术就算入门,但也仅仅是入门,现在前端开发的定义已经远远不止这些.前端小课堂(HTML/CSS/JS),本着提升技术水平,打牢基础 ...

  8. Web前端下载文件的几种常见方式

    1 标签or点击事件 标签下载 <a href="xxxxx"> 或 <a href="xxxxx" download="xxxx& ...

  9. Windows、Unix、Mac不同操作系统的换行问题 回车符\r和换行符\n

    一.概念: 换行符'\n'和回车符'\r' (1)换行符就是另起一行  --- '\n' 10 换行(newline) (2)回车符就是回到一行的开头 --- '\r' 13 回车(return) 所 ...

最新文章

  1. flex 设置换行flex-wrap
  2. 结合计算机专业谈创新,计算机专业学生创新能力培养论文
  3. 身份认证设计的基本准则
  4. python接口在哪里_在Python中实现接口?
  5. ssd1306 oled 行扫描方式
  6. Android 12 WiFi 架构
  7. [高数][高昆轮][高等数学上][第一章-函数与极限]02.数列的极限
  8. UDP传输rtp数据包丢帧
  9. 通过webSocket实现app产生的数据在网页实时显示
  10. Javascript如何阻止事件的默认行为?
  11. php代码审计之chinaz小试牛刀
  12. numpy.random.randn()与rand()的区别
  13. proe 5.0 m060安装
  14. 你不得不关注的5 大Android 开发技术——2020
  15. 深度学习和计算机视觉相关总结
  16. 拿去打包上线!一套代码实现1对1 、1对N在线课堂与低延迟大班课
  17. Linux虚拟文件系统vfs及proc详解
  18. MAC系统“无法验证开发者”问题
  19. tp5 php 对接通联支付的协议支付
  20. FlyMcu串口ISP下载STM32程序教程

热门文章

  1. 北京NIKE ADIDAS 折扣店/工厂店总结
  2. java.beans包概述
  3. 华为最爱给哪些大学生发offer?学历竟不是第一位
  4. Axure RP Extension for Chrome解决办法
  5. Oracle列转行函数listagg和wm_concat
  6. 计算机绘图说课视频,全剖视图 说课稿
  7. 『杭电1101』The Parallel Challenge Ballgame
  8. Wordpress主题Git后台清净模式设置
  9. 如何在手机上安装fiddler证书
  10. js遍历一段html,javascript如何遍历?