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 模块开发及发布详解分享
Mar 07 NodeJs
nodejs读取memcache示例分享
Jan 02 NodeJs
轻松创建nodejs服务器(10):处理POST请求
Dec 18 NodeJs
NodeJS中Buffer模块详解
Jan 07 NodeJs
使用Angular和Nodejs、socket.io搭建聊天室及多人聊天室
Aug 21 NodeJs
Nodejs如何搭建Web服务器
Mar 28 NodeJs
nodejs 的 session 简单使用
Jun 06 NodeJs
NodeJS使用formidable实现文件上传
Oct 27 NodeJs
nodejs个人博客开发第六步 数据分页
Apr 12 NodeJs
nodejs初始化init的示例代码
Oct 10 NodeJs
nodejs提示:cross-device link not permitted, rename错误的解决方法
Jun 10 NodeJs
Nodejs封装类似express框架的路由实例详解
Jan 05 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模板解析类实例
2015/07/09 PHP
php阳历转农历优化版
2016/08/08 PHP
总结PHP如何获取当前主机、域名、网址、路径、端口和参数等
2016/09/09 PHP
PHP获取当前日期及本周一是几月几号的方法
2017/03/28 PHP
JavaScript 学习 - 提高篇
2007/02/02 Javascript
jquery中load方法的用法及注意事项说明
2014/02/22 Javascript
ionic js 复选框 与普通的 HTML 复选框到底有没区别
2016/06/06 Javascript
JavaScript正则表达式简单实用实例
2017/06/23 Javascript
jQuery DOM节点的遍历方法小结
2017/08/15 jQuery
使用rollup打包JS的方法步骤
2018/12/05 Javascript
javascript实现5秒倒计时并跳转功能
2019/06/20 Javascript
详解Vue.js 可拖放文本框组件的使用
2021/03/03 Vue.js
Python写入CSV文件的方法
2015/07/08 Python
python读取.mat文件的数据及实例代码
2019/07/12 Python
Python代码块及缓存机制原理详解
2019/12/13 Python
Python实现迪杰斯特拉算法过程解析
2020/09/18 Python
Pandas替换及部分替换(replace)实现流程详解
2020/10/12 Python
自荐信的五个重要部分
2013/10/29 职场文书
年度考核评语
2014/01/19 职场文书
英语教学随笔感言
2014/02/20 职场文书
岗位职责说明书
2014/05/07 职场文书
结对共建工作方案
2014/06/02 职场文书
松材线虫病防治方案
2014/06/15 职场文书
教师三严三实心得体会
2014/10/11 职场文书
2014年化验员工作总结
2014/11/18 职场文书
2014年教研组工作总结
2014/11/26 职场文书
党员个人党性分析材料
2014/12/18 职场文书
2014流动人口计划生育工作总结
2014/12/20 职场文书
2015年学雷锋活动总结
2015/02/06 职场文书
英文慰问信
2015/02/14 职场文书
2015年社区重阳节活动总结
2015/07/30 职场文书
学习师德师风的心得体会(2篇)
2019/10/08 职场文书
JavaScript原始值与包装对象的详细介绍
2021/05/11 Javascript
一看就懂的MySQL的聚簇索引及聚簇索引是如何长高的
2021/05/25 MySQL
微信小程序中使用vant框架的具体步骤
2022/02/18 Javascript
golang连接MySQl使用sqlx库
2022/04/14 Golang