之前写过一篇预览pdf的,Vue使用vue-pdf实现PDF文件预览 ,大家按需所用
一般项目中在上传文件之前可能会有 先预览一下,看是否符合要求,符合再上传,这里先说了pdf文件,使用pdfobject库,也很方便
安装
pnpm add pdfobject
引入
import pdf from 'pdfobject'
使用
这里使用会借助于FileReader,FileReader用于读取文件
// 点击文件上传回调
handlePreview(file) {
const { raw } = file
// 预览pdf
// FileReader用于读取文件
let reader = new FileReader()
reader.readAsDataURL(raw) // 这里只需要将文件传进去就可以了
reader.onload = e => {
// reader.result 同 e.target.result
// 1.文件名 2.要将pdf渲染到的指定位置(dom元素) 3.指定在embed标签中的显示的宽度
pdf.embed(reader.result, '#previewPdfAndDocx', { width: '100%' })
}
},
效果
我这里没在上传之前判断,这里是上传之后,点击文件的时候进行预览,也可以在上传文件之前进行预览,然后决定是否进行上传。根据具体项目需求来