需要了解,new FormData() --上传时,将内容转为文件流
FormData提供一种表示表单数据的键值对的构造方式,实现表单数据的序列化,从而减少表单元素的拼接,提高工作效率
new FileReader()--base64压缩,目前不了解
一、excel文件导出
三种导出: 一种是纯粹前端导出;两种后端导出: 分为 后端给地址导出,还有就是文件流的形式导出,最好是后端导出,不会卡 ,前端导出数据量一大 很卡
Blod:blob是存放二进制大对象的容器,包括large object ;创建一个bold对象
后端返回二进制数据流,生成Excel :
① 点击模板获取--导出,弹框进行确认,点击确认
② 调接口,获取结果,接口的reaponseType: ' blob'
③ 调用window的url方法,创建a标签,点击a = url, 设置点击下载
-- 导出文件为 pdf 时,修改 type: 'application/pdf;chartset=UTF-8'
// 不同类型文件:blob 导出 content-type 类型_blob contenttype_巨砲的博客-CSDN博客文章来源:https://www.toymoban.com/news/detail-402750.html
文章来源地址https://www.toymoban.com/news/detail-402750.html
// 导出excel
const getTemplate = async () => {
const res = await getStuTemplate()
// const blob = new Blob(['\ufeff' + res], { type: 'application/vnd.ms-excel' })
// 调用window的url方法
const url = window.URL.createObjectURL(res)
// 通过创建a标签实现
const link = document.createElement('a')
link.href = url
// 命名
// link.download = res?.headers['content-disposition'].split(';')[1].split('=')[1] || '模板'
link.download = decodeURI('考生信息')
document.body.appendChild(link)
// 下载文件
link.click()
// 释放内存
document.body.removeChild(link)
}
// 接口--导出excel模板
export async function getStuTemplate(params?: any) {
return request(`/${Proxy_Api}/------------`, {
method: 'GET',
responseType: 'blob',
params,
})
}
// 导出 -- PDF
const getTemplate = async () => {
const res = await getStuTemplate({ code })
// 创建bl
到了这里,关于react-前端excel 文件/PDF文件 导入 --导出,照片上传的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!