nodejs(officegen)+vue(axios)在客户端导出word文档的方法


Posted in NodeJs onJuly 31, 2018

前言

我的项目中有一个需求:点击按钮生成可编辑的word文档订单详情的信息

我使用的前端框架是Vue.js、后台使用的是node.js

node.js生成和导出word文档我参考的是下面这两篇文章,写的挺好的(github上的那篇里面还有node.js生成word、excel、ppt的example,需要详细的可以看里面)

解决方法:利用了blob对象,Blob对象可以看做是存放二进制数据的容器,它是一个二进制大对象,是一个可以存储二进制文件的容器。

methods:{
  handleClick(row){
  console.log(row);
  var orderId = row.orderId + row.oid.toString();
  console.log(orderId);
  this.$ajax({
  method:"get",
  url:"http://localhost:8081/order/getDoc",
  responseType:'blob'
  }).then((res)=>{
  //这里res.data是返回的blob对象
  var blob = new Blob([res.data], {type: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document;charset=utf-8'}); //application/vnd.openxmlformats-officedocument.wordprocessingml.document这里表示doc类型
  var downloadElement = document.createElement('a');
  var href = window.URL.createObjectURL(blob); //创建下载的链接
  downloadElement.href = href;
  downloadElement.download = orderId+'.docx'; //下载后文件名
  document.body.appendChild(downloadElement);
  downloadElement.click(); //点击下载
  document.body.removeChild(downloadElement); //下载完成移除元素
  window.URL.revokeObjectURL(href); //释放掉blob对象
  })
  }
 }

nodejs(officegen)+vue(axios)在客户端导出word文档的方法

总结

以上所述是小编给大家介绍的nodejs(officegen)+vue(axios)在客户端导出word文档的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

NodeJs 相关文章推荐
nodejs获取本机内网和外网ip地址的实现代码
Jun 01 NodeJs
Nodejs关于gzip/deflate压缩详解
Mar 04 NodeJs
浅析Nodejs npm常用命令
Jun 14 NodeJs
nodejs根据ip数组在百度地图中进行定位
Mar 06 NodeJs
angular2+nodejs实现图片上传功能
Mar 27 NodeJs
nodejs制作爬虫实现批量下载图片
May 19 NodeJs
详解nodejs异步I/O和事件循环
Jun 07 NodeJs
详解nodejs实现本地上传图片并预览功能(express4.0+)
Jun 28 NodeJs
nodejs判断文件、文件夹是否存在及删除的方法
Nov 10 NodeJs
nodejs脚本centos开机启动实操方法
Mar 04 NodeJs
在NodeJs中使用node-schedule增加定时器任务的方法
Jun 08 NodeJs
nodejs 十六进制字符串型数据与btye型数据相互转换
Jul 30 #NodeJs
NodeJS 中Stream 的基本使用
Jul 30 #NodeJs
Nodejs实现爬虫抓取数据实例解析
Jul 05 #NodeJs
nodejs的路径问题的解决
Jun 30 #NodeJs
nodejs用gulp管理前端文件方法
Jun 24 #NodeJs
Nodejs异步回调之异常处理实例分析
Jun 22 #NodeJs
nodejs实现套接字服务功能详解
Jun 21 #NodeJs
You might like
php中设置多级目录session的问题
2011/08/08 PHP
深入Apache与Nginx的优缺点比较详解
2013/06/17 PHP
让codeigniter与swfupload整合的最佳解决方案
2014/06/12 PHP
PHP实现获取客户端IP并获取IP信息
2015/03/17 PHP
判断、添加和删除WordPress置顶文章的相关PHP函数小结
2015/12/10 PHP
js操作CheckBoxList实现全选/反选(在客服端完成)
2013/02/02 Javascript
js 字符串转换成数字的三种方法
2013/03/23 Javascript
jquery foreach使用示例
2013/09/12 Javascript
jQuery封装的获取Url中的Get参数示例
2013/11/26 Javascript
一个很有趣3D球状标签云兼容IE8
2014/08/22 Javascript
Javascript实现颜色rgb与16进制转换的方法
2015/04/18 Javascript
jQuery封装的屏幕居中提示信息代码
2016/06/08 Javascript
jquery滚动条插件slimScroll使用方法
2017/02/09 Javascript
nodejs操作mysql实现增删改查的实例
2017/05/28 NodeJs
webpack 单独打包指定JS文件的方法
2018/02/22 Javascript
vue2.0 + element UI 中 el-table 数据导出Excel的方法
2018/03/02 Javascript
layui 设置table 行的高度方法
2018/08/17 Javascript
webpack 静态资源集中输出的方法示例
2018/11/09 Javascript
详解vue的双向绑定原理及实现
2019/05/05 Javascript
python生成随机mac地址的方法
2015/03/16 Python
python实现文件快照加密保护的方法
2015/06/30 Python
python使用itchat库实现微信机器人(好友聊天、群聊天)
2018/01/04 Python
Python实现二叉树前序、中序、后序及层次遍历示例代码
2019/05/18 Python
python flask框架实现传数据到js的方法分析
2019/06/11 Python
django组合搜索实现过程详解(附代码)
2019/08/06 Python
Python实现代码块儿折叠
2020/04/15 Python
使用numpngw和matplotlib生成png动画的示例代码
2021/01/24 Python
CSS3哪些新特性值得称赞
2016/03/02 HTML / CSS
库存图片、照片、矢量图、视频和音乐:Shutterstock
2021/02/12 全球购物
电大毕业自我鉴定
2014/02/03 职场文书
电脑售后服务承诺书
2014/03/27 职场文书
2014年大学生就业规划书
2014/04/04 职场文书
2014年助理工程师工作总结
2014/11/14 职场文书
2014年销售工作总结范文
2014/12/01 职场文书
2015年扶贫帮困工作总结
2015/05/20 职场文书
少先队大队委竞选口号
2015/12/25 职场文书