当前位置: 首页 > news >正文

vue中人员导出功能实现

大纲:


  1、导出定义的export.js文件 代码展示

import axios from 'axios'
//导出一
export const exportExcel = (url, params, name, type = 'post') => {// url url路径 params 查询参数 name 文件名 type 请求方式axios[type](url, params, {responseType: 'blob',}).then(res => {let blob = new Blob([res.data], {type: 'application/vnd.ms-excel','Content-Type': 'application/vnd.ms-excel'});let downloadElement = document.createElement('a');let href = window.URL.createObjectURL(blob); //创建下载的链接downloadElement.href = href;downloadElement.download = name || '未命名.xls'; //下载后文件名document.body.appendChild(downloadElement);downloadElement.click(); //点击下载document.body.removeChild(downloadElement); //下载完成移除元素window.URL.revokeObjectURL(href); //释放掉blob对象})
};
//导出二
export const getExcel = (u, f) => {axios.get(u, {responseType: 'blob'}).then(res => {let blob = new Blob([res.data], {type: 'application/vnd.ms-excel','Content-Type': 'application/vnd.ms-excel'});let downloadElement = document.createElement('a');let href = window.URL.createObjectURL(blob); //创建下载的链接downloadElement.href = href;downloadElement.download = f || '未命名.xls'; //下载后文件名document.body.appendChild(downloadElement);downloadElement.click(); //点击下载document.body.removeChild(downloadElement); //下载完成移除元素window.URL.revokeObjectURL(href); //释放掉blob对象})
};

 2、在有导出功能的页面引入导出方法

 若接口是GET请求,该处导出使用的是getExcel 导出方法

 deriveExpor() {var jsondata = 'orgId='+this.orgId+'&jobNo='+this.jobNo+'&name='+this.name;//调用导出方法getExcel('/api/admin/staff/staffExport?' + jsondata,'人员资料')},

 不同的请求,传参的方式也存在一定的区别;以下是POST请求

getExport(){let jsondata = {opUser: this.opUser,jobNo: this.jobNo,name: this.name,}exportExcel('/api/admin/card/info/log_list_export', {...jsondata}, '卡操作日志', 'post')
},

导出效果展示:


前言:

        上述代码是一个导出Excel文件的函数,使用了axios库发送请求并获取到Excel文件的二进制数据。将二进制数据转换为Blob对象,并创建一个下载链接,然后模拟点击下载链接进行文件下载。

导出代码详解(导出一):

  1. 使用axios库发送请求,请求的URL路径为url,请求的参数为params,请求方式默认为POST(可以通过type参数指定为其他请求方式)。

  2. 在请求的响应中,将响应数据转换为Blob对象,并指定MIME类型application/vnd.ms-excel,即Excel文件。

  3. 创建一个<a>元素,并将下载链接赋值给href属性。

  4. 指定文件名,默认为未命名.xls(可以通过name参数指定文件名)。

  5. <a>元素添加到document.body中。

  6. 模拟点击<a>元素,触发文件下载。

  7. 下载完成后,从document.body中移除<a>元素。

  8. 释放掉Blob对象对应的URL资源。

  9. 注意:在调用该函数时,需要传入URL路径、请求参数、文件名等参数。

前言:

      上述第二段代码是一个获取Excel文件并下载的函数;使用了axios库发送GET请求,获取到Excel文件的二进制数据。

导出代码详解(导出二):

  1. 使用axios库发送GET请求,请求的URL路径为u;

  2. 在请求的响应中,将响应数据转换为Blob对象,并指定MIME类型application/vnd.ms-excel,即Excel文件。

  3. 创建一个<a>元素,并将下载链接赋值给href属性。

  4. 后面几步,同导出一方法

拓展小知识:

 MIME(Multipurpose Internet Mail Extensions)类型是一种标识文件类型和格式的方式。

它是通过在HTTP、Email等协议中使用特定的字符串来表示文件的媒体类型。

   在编程中,常常需要根据文件的扩展名或内容类型来确定对应的MIME类型,以便正确地处理和解析文件数据。

相关文章:

vue中人员导出功能实现

大纲&#xff1a; 1、导出定义的export.js文件 代码展示 import axios from axios //导出一 export const exportExcel (url, params, name, type post) > {// url url路径 params 查询参数 name 文件名 type 请求方式axios[type](url, params, {responseType: blob,}).t…...

【微信小程序】引入第三方库poke对GZIP压缩数据进行解压

使用 npm 包管理工具&#xff1a; 首先&#xff0c;在小程序的根目录下执行 npm init 初始化项目&#xff0c;生成 package.json 文件。然后&#xff0c;通过 npm 安装 pako&#xff1a;npm install pako。接下来&#xff0c;在小程序的根目录下创建一个名为 miniprogram_npm 的…...

Pandas操作Excel

Pandas 是 Python 语言的一个扩展程序库&#xff0c;用于数据分析。 菜鸟教程&#xff1a;https://www.runoob.com/pandas/pandas-tutorial.html 读取Excel pd.read_excel(path,sheet_name,header) path&#xff1a;excel文件路径sheet_name&#xff1a;读取的sheet&#xff0…...

leetcode 712. Minimum ASCII Delete Sum for Two Strings(字符串删除字母的ASCII码之和)

两个字符串s1, s2, 删除其中的字母使s1和s2相等。 问删除字母的最小ASCII码之和是多少。 思路&#xff1a; DP 先考虑极端的情况&#xff0c;s1为空&#xff0c;那么要想达到s2和s1相等&#xff0c;就要把s2中的字母删完&#xff0c; ASCII码之和就是s2中所有字母的ASCII码之…...

Springboot -- 按照模板生成docx、pdf文件,docx转pdf格式

使用 poi-tl 根据模板生成 word 文件。 使用 xdocreport 将 docx 文件转换为 pdf 文件。 xdocreport 也支持根据模板导出 word &#xff0c;但是 poi-tl 的功能更齐全&#xff0c;操作更简单&#xff0c;文档清晰。 poi-tl 、xdocreport 内部均依赖了 poi &#xff0c;要注意两…...

UE5.1.1 创建C++项目失败

因一直使用Unity开发环境&#xff0c;安装Unreal后&#xff0c;并未详细配置过其开发环境&#xff0c;默认创建蓝图工程无异常&#xff0c;但创建UE C项目时总共遇到两个错误&#xff1a; 错误一 Running /Epic/UE/UE_5.1/Engine/Build/BatchFiles/Build.bat -projectfiles -…...

windows进行端口映射

windows进行端口映射 1. 查询端口映射情况 netsh interface portproxy show v4tov42. 查询某一个IP的所有端口映射情况 netsh interface portproxy show v4tov4 | find "[IP]" # 例&#xff1a; netsh interface portproxy show v4tov4 | find "192.168.1.1&quo…...

Python 异常处理

Python 异常处理 python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误。你可以使用该功能来调试python程序。 异常处理: 本站Python教程会具体介绍。断言(Assertions):本站Python教程会具体介绍。 python标准异常 异常名称描述BaseException所有异常的…...

C++ 类的静态成员

在结构化程序设计中程序模块的基本单位是函数&#xff0c;因此模块间对内存中数据的共享是通过函数与和函数之间的数据共享来实现的&#xff0c;其中包括两个途径——参数传递和全局变量。 面向对象的程序设计方法兼顾数据的共享和保护&#xff0c;将数据与操作数据的函数封装…...

360T7路由器进行WiFi无线中继教程

360T7路由器进行WiFi中继教程 1. 概述2. 360T7路由器进行WiFi中继实现教程2.1 登录路由器管理界面2.2 选择上网方式2.3 搜索WiFi2.4 连接WiFi2.5 点击确认2.6 在主页面查看网络 1. 概述 中继路由系统由一组中继路由器组成&#xff0c;为不能交换路由信息的路由域提供中继路由。…...

主成分分析

主成分分析 相关概念方差协方差协方差矩阵特征值和特征向量 主成分分析数据降维主成分分析原理主成分分析过程sklearn库中的PCA主成分分析实现案例 相关概念 方差 方差是一个用来衡量一组数据离散程度的统计量&#xff0c;它是各样本与样本均值的差的平方和的平均值。方差越大…...

笙默考试管理系统-MyExamTest(26)

笙默考试管理系统-MyExamTest&#xff08;26&#xff09; 目录 一、 笙默考试管理系统-MyExamTest 二、 笙默考试管理系统-MyExamTest 三、 笙默考试管理系统-MyExamTest 四、 笙默考试管理系统-MyExamTest 五、 笙默考试管理系统-MyExamTest 笙默考试管理系统-MyEx…...

重新理解 RocketMQ Commit Log 存储协议

最近突然感觉&#xff1a;很多软件、硬件在设计上是有 root reason 的&#xff0c;不是 by desgin 如此&#xff0c;而是解决了那时、那个场景的那个需求。一旦了解后&#xff0c;就会感觉在和设计者对话&#xff0c;了解他们的思路&#xff0c;学习他们的方法&#xff0c;思维…...

ES6基础知识十:你是怎么理解ES6中 Decorator 的?使用场景?

一、介绍 Decorator&#xff0c;即装饰器&#xff0c;从名字上很容易让我们联想到装饰者模式 简单来讲&#xff0c;装饰者模式就是一种在不改变原类和使用继承的情况下&#xff0c;动态地扩展对象功能的设计理论。 ES6中Decorator功能亦如此&#xff0c;其本质也不是什么高大…...

接口/Web自动化测试如何做?框架如何搭建封装?

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 自动化测试怎么做…...

Linux怎么从网络上下载文件

wget命令用于从网络上下载文件 下载文件&#xff1a; wget [URL]使用wget命令加上要下载的文件的URL&#xff0c;可以将文件下载到当前目录。 指定保存的文件名&#xff1a; wget -O [保存的文件名] [URL]使用-O选项后跟保存的文件名&#xff0c;可以指定下载的文件保存的名称…...

Flutter携带JSON参数post请求

在Flutter中发送带有JSON参数的网络请求&#xff0c;你可以使用HTTP库&#xff08;如http或dio&#xff09;来实现。以下是使用http库发送网络请求并携带JSON参数的示例&#xff1a; import package:http/http.dart as http; import dart:convert;// 创建参数Map Map<Strin…...

【vue】vue-image-lazy图片懒加载使用与介绍【超详细+npm包源代码】

简介 当前插件是基于vue3&#xff0c;写的一个图片懒加载&#xff0c;文章最下方是npm包的源码&#xff0c;你可以自己拿去研究和修改&#xff0c;如有更好的想法可以留言&#xff0c;如果对你有帮助&#xff0c;可以点赞收藏和关注&#xff0c;谢谢。 后续会添加图片放大和切…...

MFC第二十四天 使用GDI对象画笔和画刷来开发控件(分页控件选择态的算法分析、使用CToolTipCtrl开发动静态提示)

文章目录 GDI对象画笔和画刷来开发控件梯形边框的按钮控件CMainDlg.hCMainDlg.cppCLadderCtrl.hCLadderCtrl.cpp 矩形边框的三态按钮控件 CToolTipCtrl开发动静态提示CMainDlg.hCMainDlg.cppCLadderCtrl.hCLadderCtrl.cpp: 实现文件 矩形边框的三态按钮控件 CToolTipCtrl开发动…...

【NLP-新工具】语音转文本与OpenAI的用途

一、说明 OpenAI最近2022发布了一个名为Whisper的新语音识别模型。与DALLE-2和GPT-3不同&#xff0c;Whisper是一个免费的开源模型。它的主要功能就是将语音翻译成文本。本文将介绍如何使用这个重要应用库。 二、 Whisper概念 2.1 Whisper是啥&#xff1f; Whisper 是一种自动…...

为什么90%的工程师不敢用ChatGPT交付生产代码?——基于12家头部科技公司内部审计报告的独家解读

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;为什么90%的工程师不敢用ChatGPT交付生产代码&#xff1f;——基于12家头部科技公司内部审计报告的独家解读 信任鸿沟&#xff1a;不是能力不足&#xff0c;而是责任不可追溯 12家受访企业&#xff08…...

【RT-DETR实战】064、NMS后处理优化与替代方案:我在RT-DETR里踩过的那些坑

今天调一个RT-DETR的部署问题,模型推理速度明明达标了,但在实际视频流里跟踪目标时总出现“闪跳”——同一个目标在相邻帧里忽左忽右。 盯着输出看了半天,发现是相邻帧的检测框置信度相差0.01,NMS直接就把低分框干掉了,导致目标位置在帧间不连续。这个经典问题让我决定好…...

给电力行业装上“地理大脑”:百度智能云图云做了一次“地址大模型”变革

“我家在老三中对面那条巷子&#xff0c;供电局以前的老院子旁边……”当95598客服接到这样的报修电话时&#xff0c;系统该如何精准定位&#xff1f;这并非个例。城市快速扩张、街巷小区不断新建更名&#xff0c;而电力系统的地址数据往往跟不上现实变化。同时&#xff0c;传统…...

抖音图片怎么去水印文字?2026年实测工具推荐及方法完全指南

抖音图片的水印文字问题困扰着很多内容创作者和素材收集者。无论是想保存喜欢的图片、重新利用优质素材&#xff0c;还是为自己的创意项目寻找灵感&#xff0c;去除不必要的水印都是必要的技能。本文为你详细介绍抖音图片去水印文字的多种方法&#xff0c;从专业工具到手机应用…...

从概率拟合到内生心智:七层投影架构重构AGI数字生命新范式

自2017年Transformer架构问世以来&#xff0c;人工智能领域正式迈入大模型迭代时代。十余年间&#xff0c;千亿、万亿参数模型不断涌现&#xff0c;依托自注意力机制的概率拟合算法&#xff0c;AI在文本生成、多模态交互、逻辑问答等领域实现了规模化突破&#xff0c;彻底改变了…...

ng-demos构建工具对比:Grunt vs Gulp在Angular项目中的实战应用

ng-demos构建工具对比&#xff1a;Grunt vs Gulp在Angular项目中的实战应用 【免费下载链接】ng-demos variety of angular demos 项目地址: https://gitcode.com/gh_mirrors/ng/ng-demos 在Angular项目开发中&#xff0c;构建工具的选择直接影响开发效率和项目维护性。…...

AI Agent落地10大避坑指南:从白皮书到生产环境的工程真相

1. 这不是技术文档翻译&#xff0c;而是一次“工程师对产品经理”的现场拆解 你点开这篇标题&#xff0c;大概率是因为刚看到Google那篇《AI Agents: A Whitepaper on Principles, Capabilities, and Limitations》——PDF文件名长得像法律条文&#xff0c;开头三段全是“auton…...

用随机森林实现手写大写字母识别的完整实践

1. 项目概述&#xff1a;用随机森林搞定手写信件识别&#xff0c;这事儿比你想象中更接地气 “How To Perform Letter Recognition in Python Using Random Forest Classifier”——这个标题乍看像教科书里的章节名&#xff0c;但实际拆开来看&#xff0c;它直指一个非常典型、…...

ElevenLabs安徽话输出失真?3类高频崩溃场景+5行Python代码实时修复音频相位偏移

更多请点击&#xff1a; https://codechina.net 第一章&#xff1a;ElevenLabs安徽话语音输出失真现象全景扫描 ElevenLabs 作为当前主流的高质量文本转语音&#xff08;TTS&#xff09;服务提供商&#xff0c;其多语言支持能力广受开发者青睐。然而&#xff0c;在面向中文方言…...

Unity协程本质:帧调度驱动的状态机原理与陷阱防治

1. 协程不是“多线程”&#xff0c;但比你想象中更难搞懂 很多人第一次在Unity里写 StartCoroutine(MyRoutine()) 时&#xff0c;心里想的是&#xff1a;“哦&#xff0c;这不就是个能暂停、能延时的函数嘛&#xff1f;”——然后很快就在实际项目里栽了跟头&#xff1a;UI按…...