vue使用pdf.js在线预览pdf文件

news/2024/7/24 11:23:41

vue使用pdf.js在线预览pdf文件

1、先去下载pdf.js,打开官网
pdf.js官网 :http://mozilla.github.io/pdf.js/getting_started/#download
(如果打不开这个网站,可以参考这个博客)
百度网盘 链接: https://pan.baidu.com/s/1CK7nHJOqpqfcHSG1EDRBZA 提取码: 1juv 复制这段内容后打开百度网盘手机App,操作更方便哦
https://blog.csdn.net/lu6545311/article/details/111279106

https://blog.csdn.net/lu6545311/article/details/111279106

2、导入项目

在这里插入图片描述
3、使用,我是弹框打开的

<el-dialog :visible.sync="dialogPdf" width="90%" top="0px" center>
        <div slot="title">
          <el-button type="primary" @click="getDowfile(pdffile)">点击下载</el-button>
        </div>
        <div style="height:800px;">
          <iframe :src="pdfSrc" width="100%" height="100%"></iframe>
        </div>
      </el-dialog>
pdfSrc:'',
dialogPdf:false,
pdffile:'',
getSeePdf(file){//预览
      this.pdffile=file
      let routeUrl = `${this.$baseUrl}/rps/file/download`//文件的下载路径
      let pSrc = routeUrl + '?r=' + new Date();
      this.pdfSrc = '../../../static/pdf/web/viewer.html?file=' + encodeURIComponent(pSrc) + '.pdf';
      this.dialogPdf = true
    },
getDowfile(file){//下载
      var link = document.createElement('a');
      let routeUrl = `${this.$baseUrl}/rps/file/download`
      link.href = routeUrl;
      link.download = file.originalname; //下载后文件名
      document.body.appendChild(link);
      link.click(); //点击下载
      document.body.removeChild(link); //下载完成移除元素
    },

http://www.niftyadmin.cn/n/861517.html

相关文章

vue预览word,excel,pptx,pdf文件

vue预览word&#xff0c;excel&#xff0c;pptx&#xff0c;pdf文件 1、做word&#xff0c;excel&#xff0c;pptx的预览&#xff0c;要先确定文件路径访问是通过域名的url来预览&#xff0c;不可以通过IP的url来访问 先把文件路径的url进行url编码&#xff08;encodeURIComp…

el-card的点击事件失效的解决方式

click link改为click.native link//变成原生绑定

哔哩哔哩2020校园招聘前端笔试卷(一)

在数组里面找数的>双指针 1.以下不是CSS伪类选择器的是&#xff1f; 2. [‘1’, ‘2’, ‘3’].map(parseInt) ( ) [1, 2, 3].map((item, index) > {return parseInt(item, index) }) // 第二个参数表示使用什么进制来转换 parseInt(1, 0) // 1 默认十进制的1 parseIn…

微信小程序的两层wx-for的使用

微信小程序的两层wx-for的使用 微信小程序需要用到两次循环来获取页面数据&#xff0c;第二次循环的时候使用wx:for-item"pro"来命名别名 <view><van-grid square border"{{ false }}" column-num"3" wx:for"{{ list }}" w…

计网笔记(二)

3.1分组交换 当主机H1要向另一主机H2发送数据&#xff08;报文&#xff09;时&#xff0c;首先将数据划分成若干个等长的分组&#xff0c;然后将这些分组一个接一个地发往里与H1相联的路由A ,当A接到分组后&#xff0c;先放入缓冲区&#xff0c;再按一定的路由算法确定该分组下…

elementUI的自定义主题

elementUI的自定义主题的设置 一、安装elementUI以及sass-loader,node-sass(项目中使用scss编写需要依赖的插件) npm i element-ui -S npm i sass-loader -D npm i sass-loader -D有时候安装sass的时候会安装失败&#xff0c;可以直接安装固定的版本号。直接复制到到package.…

计网笔记(三)

1传输层知识 传输层是只有计算机才有的层次&#xff0c;主要提供是进程间逻辑通信 可靠传输或者不可靠的功能。 这里简单说一下可靠传输协议TCP 不可靠传输协议UDP。 TCP面向连接&#xff0c;可靠&#xff0c;不提供广播和多播&#xff0c;而且时间延迟比较大&#xff0c;…

JS数组的常用方法

1.splice&#xff08;&#xff09; &#xff01;注意&#xff1a;splice函数会改变原数组。 由被删除的元素组成的一个数组。如果只删除了一个元素&#xff0c;则返回只包含一个元素的数组。如果没有删除元素&#xff0c;则返回空数组 例子 1 在本例中&#xff0c;我们将创建一…