当前位置: 首页 > 后端技术 > Node.js

关于点击生成pdf文件并下载到本地的功能

时间:2023-04-03 11:11:04 Node.js

后端导入模块async=require'async'fs=require'fs'writefilewriteFile=(address,str,cbf)->write=fs.writeFileSync(address,str)returncbfnull,write生成html文件htmlFile=(address,option,cbf)->html=fs.readFileSync(address,option)returncbfnull,html生成pdf文件pdfFile=(html,address,cbf)->#console.log"html",htmloptions={format:'A3'}pdf.createhtml,options.toFileaddress,(err,res)->if(err)returnconsole.logerrreturncbfnull,"success"删除html文件deteleHtml=(address,cbf)->fs.unlink地址,(err,res)->if(err)returnconsole.logerrreturncbfnull,'detelesuccess'callfuncs=[#writefile(cbf)->returnwriteFilehtmlAdr,params.str,cbf#生成html文件(result1,cbf)->返回htmlFilehtmlAdr,'utf-8',cbf#生成pdf文件(result2,cbf)->返回pdfFileresult2,pdfAdr,cbf#删除html文件(result3,cbf)->返回deteleHtmlhtmlAdr,cbf]async.waterfallfuncs,(error,result)->iferrorreturncbferror,null#返回用户信息res.downloadpdfAdr,fileNameFrontenda(href="javascript:;"v-on:click.stop.prevent="onDownEsignatureLh(esignature_lh);")下载a=document.createElement"a"url=window.URL.createObjectURLres.bodya.href=urla.download=esignature_lh.ciphertext+".pdf"a.click()window.URL.revokeObjectURLres.身体