Vue.js使用Blob的方式实现excel表格的下载(流文件下载)

Vue.js使用Blob的方式实现excel表格的下载(流文件下载),第1张

最近在做blob流导出相关功能,其中需要导出excel、csv、word、zip压缩文件之类的,在导出excel和word中需要知道对应的content-type属性,关于blob格式如下:

您好,您可以使用 JavaScript 的 XML>

js是做不了文件和二进制的互相转换的,而且按照你的要求是存取数据库,js做不到的。

用别的方式(Java或者C#等等)去连接数据库,把文件作为blob对象(二进制大对象)类型存入数据库。Javascript,一种高级编程语言,通过解释执行,是一门动态类型,面向对象(基于原型)的直译语言。它已经由欧洲电脑制造商协会通过ECMAScript实现语言的标准化。它被世界上的绝大多数网站所使用,也被世界主流浏览器(Chrome、IE、FireFox等)支持。JavaScript是一门基于原型、函数先行的语言,是一门多范式的语言,它支持面向对象编程,命令式编程,以及函数式编程。它提供语法来 *** 控文本、数组、日期以及正则表达式等,不支持I/O,比如网络、存储和图形等,但这些都可以由它的宿主环境提供支持。JavaScript虽与Java有很多相似性,但这两门编程语言从设计之初就有很大的不同,JavaScript的语言设计主要受到了Self(一种基于原型的编程语言)和Scheme(一门函数式编程语言)的影响。在语法结构上它又与C语言有很多相似(例如if条件语句、while循环、switch语句、do-while循环等)。

1 调用后端接口导出文件

示例下载接口url >

1、并没有原生的方法控制个数。

2、解决办法:等选择完了用js去计算有多少个,如果超出了就提示。思路如下:

1)你可以在选择完文件后,你的input的onchange事件中,判断eventtargetfileslength就可以知道你的文件多少了。

2)在onchange事件中使用

if (eventtargetfileslength > 10) {

consolelog("太多啦!超过十张啦!");

let files = eventtargetfiles

files = Arrayfrom(files)slice(0,10)

//此处写你的上传接口,参数就是files

consolelog("只上传10张哦",files)

}

这个方法可以限制文件只需要上传选中的前10个。

扩展资料:

1、关于input标签上传文件,还有一个属性是accept。可以限制只能上传类型,这样可以避免用户上传很多非的文件,不好处理。使用方法:<input id="File1" type="file"  accept="image/"  />

2、调用接口上传文件的方法,可以使用FormData,FromData 是一次 >

eg:

var fileObj = new FromData();

fileObjappend('key',value);   // value 可以是一个字符串 string 也可以是一个 blob (代表,file对象)

var xhr = new XML>

参考资料:

MDN技术文档-<input type='file'/>

以上就是关于Vue.js使用Blob的方式实现excel表格的下载(流文件下载)全部的内容,包括:Vue.js使用Blob的方式实现excel表格的下载(流文件下载)、javascript 怎么从文件路径得到file对象、js如何把http链接的文件转成文件对象传回后端等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10174910.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存