# 前端常用代码

前端常用代码

计算 Span 中字体的长度

getOperationColumnWidth (showToolBars) {
    let str = '测试'
    let dom = document.createElement('span')
    dom.style.display = 'inline-block'
    dom.style.fontSize = '14px'
    dom.textContent = str
    document.body.appendChild(dom)
    const width = dom.clientWidth
    document.body.removeChild(dom)
    return width
}

下载文件

  • Vue组件中,创建一个方法来处理文件下载操作。
methods: {
  downloadFile() {
    // 获取文件的URL或路径
    const fileUrl = '/path/to/file';
    // 创建一个临时的<a>元素
    const link = document.createElement('a');
    link.href = fileUrl;
    // 指定下载的文件名
    link.download = 'file.pdf';
    // 触发下载
    link.click();
  }
}
  • Vue模板中添加一个按钮或触发元素来调用下载方法。
html
<template>
  <div>
    <button @click="downloadFile">下载文件</button>
  </div>
</template>
  • 确保将 /path/to/file 替换为实际文件的URL或路径,将 file.pdf 替换为所需的文件名。
  • 当按钮被点击时,它将触发文件的下载操作。

Base64数据转换并下载

  • 安装一个用于转换Base64Blob的库
npm install b64-to-blob
  • Vue组件中引入 b64-to-blob 库。
import b64toBlob from 'b64-to-blob';
  • 创建一个方法来处理Base64转换和下载操作。
methods: {
     downloadPDF() {
       // 获取Base64数据
       const base64Data = 'base64Str';
       // 将Base64转换为Blob
       const blobData = b64toBlob(base64Data, 'application/pdf');
       // 创建一个URL对象
       const url = URL.createObjectURL(blobData);
       // 创建一个临时的<a>元素
       const link = document.createElement('a');
       link.href = url;
       // 指定下载的文件名
       link.download = 'file.pdf';
       // 触发下载
       link.click();
       // 清理URL对象
       URL.revokeObjectURL(url);
     }
   }
  • Vue模板中添加一个按钮或触发元素来调用下载方法。
html
   <template>
     <div>
       <button @click="downloadPDF">下载PDF</button>
     </div>
   </template>
  • 确保将 base64Str 为实际的Base64数据。当按钮被点击时,它将触发Base64数据的转换和下载操作,并将其保存为PDF文件。

浏览器iframe打开pdf

<iframe id='previewPdf' :src="pdfUrl" ></iframe>

换和下载操作,并将其保存为PDF文件。

浏览器iframe打开pdf

<iframe id='previewPdf' :src="pdfUrl" ></iframe>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

全栈程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值