首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

前端导出 excel(基于 Blob.js 和 Export2Excel.js 做前端导出

下载导入 Blob.js 和 Export2Excel.js 将在 Export2Excel.js 中引用其他 js 文件的时候,一开始在这一步踩过坑。 require('script-loader!...vendor/Blob 后来找到的解决方法是下载 blob.js 文件,将 blob.js 与 Export2Excel.js 放在同一个文件夹下,并将引用方式改为如下。...,也可以在此直接复制 Blob.js gitHub 地址 /* Blob.js A Blob implementation. 2014-05-27 By Eli Grey, http://eligrey.com...@source http://purl.eligrey.com/github/Blob.js/blob/master/Blob.js / (function (view) { "use strict";...在需要执行导出的页面,先引入 newToExcel.js import exportExcel from "@/utils/newToExcel.js"; 然后去请求 api 中的数据,将数据组装成可以执行的格式

12.1K30
您找到你想要的搜索结果了吗?
是的
没有找到

浏览器js主导的导出动态数据

首页 专栏 javascript 文章详情 3 浏览器js主导的导出动态数据 ?...黒之染发布于 2 月 7 日 当一个系统需要导出动态数据时,有时候首选方案是:由服务实时生成csv或Excel格式的文件,然后用二进制流的形式返回给前端。...这时候不得不寻找其他的下载/导出方案。其实解决方案很多,这里推荐一个比较全能的方案,而且实现起来不复杂。 StreamSaver.js 可以解决问题,而且它对文件大小,没有限制。...FileSaver.js 也能做到,但它文件大小受限于前端可用内存和Blob允许的最大值即2G 在这个方案里,服务只需要提供一个分页接口,前端循环调用该接口拿数据,解析后写入同一个文件,甚至可以压缩成...函数声明: /** * 下载大文件 * 文档: https://github.com/jimmywarting/StreamSaver.js * */ import streamSaver from

1.2K10

实现Web自定义截屏(原生JS版)

前言 前几天我发布了一个web自定义截图的插件,在使用过程中有开发者反馈这个插件无法在vue2项目中使用,于是,我就开始找问题,发现我的插件是基于Vue3的开发的,由于Vue3的插件和Vue2的插件完全不兼容...经过一番考虑后,我决定用原生js来重构这个插件,让其不依赖任何库,这样它就能运行在任意一台支持js的设备上,本文就跟大家分享下我重构这个插件的过程,欢迎各位感兴趣的开发者阅读本文。...运行结果视频: 写在前面 本文不讲解插件的具体实现思路,对插件实现思路感兴趣的开发者请移步:实现Web自定义截屏 搭建开发环境 我想使用ts、scss、eslint、prettier来提升插件的可维护性...body中,在vue3版本的截图插件中,我们可以使用vue组件来辅助我们,这里我们就要基于组件来使用js来创建对应的dom,为其绑定对应的事件。...因此,我们默认暴露出一个class,无论是使用script标签引入插件,还是在其他js框架里使用import来引入插件,都只需要在使用时new一下即可。

2.8K31

js导入导出总结与实践

在上一篇文章中JavaScript中AMD和ES6模块的导入导出对比,偏向于理论层面,还有一些同学在微信群里或是私下里针对一些问题进行了沟通,所以有了这一篇文章,对js的导入导出进行总结和实践 当直接给...module.exports时,exports会失效 这个问题其实已经和导入导出没什么关系了, 我们看一个知乎上的问题(详细地址阅读原文可以查看) 我们以此为突破点 js 数组赋值问题 :值传递还是引用...实践=>导出 exports exports的output.js exports.str='string字符串'//导出字符串 exports.bool=true//导出布尔 exports.num=123...={ a:1, b:2}//导出对象 input.js const iptObj= require('...., foo:(r)=>{ console.log(`导出函数为:${r}`); }, arr:[1,2,3], obj:{ a:1, b:2} } input.js const

1.4K20

Js模块化导入导出

Js模块化导入导出 CommonJs、AMD、CMD、ES6都是用于模块化定义中使用的规范,其为了规范化模块的引入与处理模块之间的依赖关系以及解决命名冲突问题,并使用模块化方案来使复杂系统分解为代码结构更合理...} /* // 当导出的模块名与被导出的成员或方法重名时可以有如下写法 module.exports = { a, b } */ // 2.js var m1 = require("....此外若是在一个文件中同时使用module.exports与exports,则只会导出module.exports的内容 // 1.js var a = 1; var b = function(){...Module Definition规范,是浏览器的模块化解决方案,CommonJS规范引入模块是同步加载的,这对服务不是问题,因为其模块都存储在硬盘上,可以等待同步加载完成,但在浏览器中模块是通过网络加载的...,export default不行 export方式导出,在导入时要加{},export default则不需要 // 1.js var a = 1; var b = function(){

2.9K20

聊聊JS的二进制家族:Blob、ArrayBuffer和Buffer

,类似数组,但在API和特性上却有诸多不同 Buffer:Node.js提供的一个二进制缓冲区,常用来处理I/O操作 Blob 我们首先来介绍BlobBlob是用来支持文件操作的。...简单的说:在JS中,有两个构造函数 File 和 Blob, 而File继承了所有Blob的属性。 所以在我们看来,File对象可以看作一种特殊的Blob对象。...Blob URL所实现的下载或者显示等功能,仅仅可以在单个浏览器内部进行。而不能在服务器上进行存储,亦或者说它没有在服务器存储的意义。...-- js部分 --> var blob = new Blob(["Hello World"]); var url = window.URL.createObjectURL(blob...-- js部分 --> function upload(blob) { var xhr = new XMLHttpRequest(); xhr.open('POST

5.7K31

JS module的导出和导入

下面两种导出方式是等价的: constD=123;exportdefaultD;export{Dasdefault}; 使用名称导出一个模块时: // "my-module.js" 模块 function...cube(x) { return x * x * x; } const foo = Math.PI + Math.SQRT2; export { cube, foo }; 在另一个模块(js文件...: // "my-module.js"模块exportdefaultfunction(x){returnx*x*x;} 在另一个模块中,我们可以像下面这样引用,相对名称导出来说使用更为简单: importcubefrom'my-module...当导入模块全部导出内容时,就是将导出模块(’my-module.js’)所有的导出绑定内容,插入到当前模块(’myModule’)的作用域中: import * as myModule from "my-module..."my-module"; import myDefault, {foo, bar} from "my-module"; // 指定成员导入和默认导入 default关键字 // my-module.js

2.6K40

Web和App测试小结

测试时,遇到过Web的项目,也测试过App,对于两者的区别以及一些侧重点,结合网络和自己的实战经验总结记录下来,方便以后测试查看。...首先,从系统架构方面Web项目:B/S 架构,基于浏览器,web测试更新了服务,客户就会同步更新,每个用户的客户都是完全一致的。...移动端相对于Web端来说还有很多特性: 一、网络种类多:移动有很多种网络,无线网络、2G、3G、4G、断网、网速较差以及网络之间的切换时页面的等待,这些对于移动端来说很重要。...操作区域不同也是移动需要关注的测试点,相对于Web的应用来说,一般不会受到屏幕的限制,而且通过鼠标操作更加准确。...七、web和移动的同步:用户在web的操作,在移动是否可以正常的进行同步、显示;在移动的操作,用户登录web账号,信息是否同步等。

71050

nodejs模块导出变成浏览器可使用的js(sm4浏览器js实现过程)

有一些实现是依赖nodejs的能力来完成的,没有浏览器进行实现。所以需要变成浏览器的可实现版本。...注意,此类可以导出的版本必定是不涉及系统相关的函数,比如获取文件,获取系统时间等只有nodejs独有的是没办法完成的。...一、安装Browserify 工具 npm install -g browserify 二、安装完成后可以使用命令:browserify 下面举例使用nodejs实现的国密sm4算法,变成一个浏览器可以使用的...js库 nodejs使用方式:https://www.ctolib.com/pecliu-gm-crypt.html 2.1 使用步骤如下: // 1、新建一个文件夹(window下直接右键新建一个即可...,内容如下 const SM4 = require('gm-crypt').sm4; console.log(SM4); // 然后执行命令生成js脚本 browserify t.js > sm4.js

2.9K40

JS】936- File、Blob、dataURL 和 canvas 的应用与转换

(2) File 对象是特殊类型的 Blob,且可以用在任意的 Blob 类型的 context 中。...Blob (1) Blob 对象表示一个不可变、原始数据的类文件对象。它的数据可以按文本或二进制的格式进行读取,也可以转换成 ReadableStream 来用于数据操作。...(2) Blob 表示的不一定是JavaScript原生格式的数据。File 接口基于Blob,继承了 blob 的功能并将其扩展使其支持用户系统上的文件。...File、Blob 转化成 dataURL FileReader 对象允许 Web 应用程序异步读取文件(或原始数据缓冲区)内容,使用 File 或 Blob 对象指定要读取的文件或数据。...instanceof Blob === true * Blob.prototype instanceof Object === true --> <!

2.4K40
领券