vue 如何实现页面以word文件导出

在网上看了答案
image.png
请问可以直接在前端完成转换操作么?

阅读 5k
2 个回答

转PDF行不?

word文档本质是一个XML文件,可以用html,直接在前端导出一份word文档是可行的。下面是以前做的excel文件导出。

// 导出文件
// exportObj = [{
//   href: '附件下载的路径',
//   tips: '下载时的提示',
//   data: '本地文件导出的内容',
//   opt: { type:"text/plain" },
//   fileName: '当为本地文件导出时必填'
// }]

function exportSingleFile(eleLink,exportObj){
  if(!exportObj.href){
    // 字符内容转变成blob地址
    let blob = new Blob([exportObj.data],exportObj.opt);
    exportObj.href = URL.createObjectURL(blob);
  }
  eleLink.download = exportObj.fileName || '';
  eleLink.href = exportObj.href;
  eleLink.click(); // 触发点击
}

function exportFile(exportObj,tips){
  // 创建可下载链接
  let eleLink = document.createElement('a');
  eleLink.style.display = 'none';
  eleLink.target = "blank";
  //下载前的提示
  let message = tips || ((typeof exportObj == 'object') && !Array.isArray(exportObj) && exportObj.tips) || '下载附件';
  dataTool.message(message);
  //参数处理,一律为多文件导出
  Array.isArray(exportObj) || (exportObj = [exportObj]) 
  exportObj.forEach(item=>exportSingleFile(eleLink,item))
  // 释放空间
  eleLink = null;
}

export default exportFile;
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题