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

中国建设网站银行网络公司优化关键词

中国建设网站银行,网络公司优化关键词,公司网站建设多少费用哪儿济南兴田德润联系电话,北京网上申请营业执照前端工作中经常会用到把一些元素导出,比如表格,正好项目有遇到导出为excel和导出为图片,就都封装实现了一下,以供其他需求的开发者使用: 1.导出为文档 这个说白了就是下载的功能,传过去检索参数&#xff…

前端工作中经常会用到把一些元素导出,比如表格,正好项目有遇到导出为excel和导出为图片,就都封装实现了一下,以供其他需求的开发者使用:在这里插入图片描述

1.导出为文档

这个说白了就是下载的功能,传过去检索参数,按照结果下载下来,没啥说的,先上伪代码

  ....then(blob => {// 创建一个临时的URL,用于下载文件console.log("blob", blob)const url = window.URL.createObjectURL(new Blob([blob]));const link = document.createElement('a');link.href = url;link.setAttribute('download', `${xxx}.xls`);  //设置文件名字document.body.appendChild(link);link.click();document.body.removeChild(link);success()   //callbackdialog.close()  //close modal}).catch((err) => {})

记得请求添加 responseType: ‘blob’,或者headers设置Accept:‘application/vnd.ms-excel’

2.导出为图片

先说一下最终的方案,最后使用了html2canvas的方案,后面我会说一下我的实现思路

  // let element = 'ant-table'const table = document.querySelector('.xxx-table'); console.log("table :", table )html2canvas(table , { scale: 1 }).then(canvas => {  //scale是图片大小const dataUrl = canvas.toDataURL('image/png');const link = document.createElement('a');link.href = dataUrl;link.download = 'table.png';link.click();});

如果一个页面导出多个相同的元素,比如一个页面有2个table,将上方传入html2canvas的参数的table换成secondTable即可,如下

var tables = document.getElementsByClassName('ant-table');
var secondTable = tables[1]

多个元素是不能使用querySelector了, 因为querySelector只能选择单个元素,这里需要用其他的元素选择器,最好是class或者tagname等.

再先说一下我一开始实现的思路

  1. 一开始我用的是原生的canvas,创建canvas画布,设置大小等,
  2. 选择目标元素并cloneNode(true)深度拷贝目标节点下的全部后代元素
  3. 渲染元素到画布: 使用drawImage方法将克隆元素渲染到画布上。
  4. 元素被渲染到画布上后就可以使用toDataURL方法将画布内容导出为图片。
const imageUrl = canvas.toDataURL('image/png');

最后创建链接节点,自动点击,移除节点:

const downloadLink = document.createElement('a');
downloadLink.href = imageUrl;
downloadLink.download = 'element-image.png';
document.body.appendChild(downloadLink);
downloadLink.click();
document.body.removeChild(downloadLink);

这种方案肯定是正常的一个思路,但是一直报cloneNode()函数有问题,undefined还是找不到,不记得了,我以为不支持这个es比较新的函数,其实想解决还是可以,用原生非方法递归子节点和节点元数据。 另外还报canvas的问题。
项目太赶了,我直接pass了,使用了html2canvas的方案,有兴趣的可以去试试。

http://www.hkea.cn/news/551278/

相关文章:

  • 深圳不加班的互联网公司整站seo优化
  • 中国做的很好的食品网站肇庆疫情最新消息
  • 做时时彩网站微信seo关键词有话要多少钱
  • 陇南市建设局网站商务软文写作
  • 做学术研究的网站营销方案怎么写?
  • 专业网站设计公司有哪些秒收录关键词代发
  • 织梦网站模板源码下载真实有效的优化排名
  • 网站建设过程中什么最重要磁力链bt磁力天堂
  • html5企业网站案例鹤壁搜索引擎优化
  • 网站建设平台简介链接交换平台
  • 照片展示网站模板宁波seo咨询
  • 奉贤建设机械网站制作长沙网址seo
  • 上海企业网站模板建站常用的网络推广方法
  • 大连零基础网站建设教学培训济南seo优化公司
  • html 做网站案例简单网站推广建设
  • 践行新使命忠诚保大庆网站建设线上广告
  • 定制网站建设服务商商家联盟营销方案
  • 集团官网建设公司外贸seo推广公司
  • 佛山新网站制作平台网站诊断工具
  • 做PPT的网站canvawhois查询
  • 营销型网站建设吉林定制化网站建设
  • 个人网上公司注册流程图新站优化案例
  • 做se要明白网站明星百度指数排名
  • 网页微博草稿箱在哪西安seo推广优化
  • 嘉兴微信网站建设谷歌首页
  • 什么网站做海报b站不收费网站
  • 如何自己做个简单网站seo知识点
  • 有哪些做批发的网站有哪些手续百度推广优化是什么意思
  • 用阿里巴巴店铺做公司网站怎么样引擎搜索有哪些
  • 网页制作软件属于什么软件类别简述seo的优化流程