vue中使用vue-pdf的方法详解


Posted in Javascript onSeptember 05, 2020

需求:简单说~~有两个pdf文件需在h5上展示,通过点击按钮切换不同文件的显示

注:

1.vue-pdf默认展示首页,我这里的需求是通过滑动展示所有页面,这里使用的v-for遍历。有多少页就加载了多少个pdf组件。

2.pdf文件存在跨域问题,这个需要后端同学支持。

3.demo上的pdf文件只有一页,测试多页展示,自己改用多页pdf文件即可

<template>
 <div class="pdf_wrap">
  <div class="pdf_list">
   <!-- src:pdf地址,page: 当前显示页 -->
   <pdf v-for="i in numPages" :key="i" :src="src" :page="i" style="width: 100%" > </pdf>
  </div>
  <Button type="info" @click="loadPdf(pdfUrl1)">
   文件1
  </Button>
   <Button type="info" native-type="submit" @click="loadPdf(pdfUrl2)">
   文件2
  </Button>
 </div>
</template>
 
<script>
import pdf from 'vue-pdf'
import { Button } from 'vant'
export default {
 components: {
  pdf, Button
 },
 data () {
  return {
   src: '',
   numPages: undefined,
   pdfUrl1: 'https://clinic-trial-attachments.oss-cn-beijing.aliyuncs.com/output/demo.pdf/1.pdf',
   pdfUrl2: 'https://clinic-trial-attachments.oss-cn-beijing.aliyuncs.com/output/123demo'
  }
 },
 mounted () {
  this.loadPdf(this.pdfUrl1)
 },
 methods: {
  loadPdf (url) {
   this.src = pdf.createLoadingTask(url)
   this.src.promise.then(pdf => {
    this.numPages = pdf.numPages // 这里拿到当前pdf总页数
   })
  }
 }
}
</script>
<style scoped>
 .pdf_wrap {
  background: #fff;
  height: 100vh
 }
 .pdf_list {
  height: 80vh;
  overflow: scroll;
 }
 button {
  margin-bottom: 20px;
 }
</style>

总结

到此这篇关于vue中使用vue-pdf的方法详解的文章就介绍到这了,更多相关vue使用vue-pdf内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
重载toString实现JS HashMap分析
Mar 13 Javascript
获取表单控件原始(初始)值的方法
Aug 21 Javascript
原生js实现日期联动
Jan 12 Javascript
JS实现简洁、全兼容的拖动层实例
May 13 Javascript
javascript实现点击提交按钮后显示loading的方法
Jul 03 Javascript
Webwork 实现文件上传下载代码详解
Feb 02 Javascript
js获取上传文件的绝对路径实现方法
Aug 02 Javascript
JavaScript省市区三级联动菜单效果
Sep 21 Javascript
Angular.js中定时器循环的3种方法总结
Apr 27 Javascript
vue .sync修饰符的使用详解
Jun 15 Javascript
javascript数组元素删除方法delete和splice解析
Dec 09 Javascript
Vue时间轴 vue-light-timeline的用法说明
Oct 29 Javascript
Angular+Ionic使用queryParams实现跳转页传值的方法
Sep 05 #Javascript
vue 将多个过滤器封装到一个文件中的代码详解
Sep 05 #Javascript
js实现可爱的气泡特效
Sep 05 #Javascript
js实现点击按钮随机生成背景颜色
Sep 05 #Javascript
javascript实现一款好看的秒表计时器
Sep 05 #Javascript
vue组件讲解(is属性的用法)模板标签替换操作
Sep 04 #Javascript
vue 动态组件(component :is) 和 dom元素限制(is)用法说明
Sep 04 #Javascript
You might like
锁定年轻人的双倍活力 星巴克推出星倍醇即饮浓咖啡
2021/03/03 咖啡文化
PHP curl伪造IP地址和header信息代码实例
2015/04/27 PHP
php连接oracle数据库的核心步骤
2016/05/26 PHP
PHPExcel简单读取excel文件示例
2016/05/26 PHP
利用php抓取蜘蛛爬虫痕迹的示例代码
2016/09/30 PHP
Laravel 连接(Join)示例
2019/10/16 PHP
laravel框架邮箱认证实现方法详解
2019/11/22 PHP
jQuery 动画基础教程
2008/12/25 Javascript
Javascript中Eval函数的使用
2010/03/23 Javascript
Javascript倒计时代码
2010/08/12 Javascript
JQuery优缺点分析说明
2011/04/10 Javascript
JQUERY 实现窗口滚动搜索框停靠效果(类似滚动停靠)
2013/03/27 Javascript
js点击出现悬浮窗效果不使用JQuery插件
2014/01/20 Javascript
javascript运动详解
2015/07/06 Javascript
JS+CSS实现美化的下拉列表框效果
2015/08/11 Javascript
JavaScript实现弹出广告功能
2017/03/30 Javascript
Javascript 实现匿名递归的实例代码
2017/05/25 Javascript
微信小程序可滑动月日历组件使用详解
2019/10/21 Javascript
Vue如何实现变量表达式选择器
2021/02/18 Vue.js
[32:30]夜魇凡尔赛茶话会 第一期01:谁是卧底
2021/03/11 DOTA
python实现查询IP地址所在地
2015/03/29 Python
Python编程实现两个文件夹里文件的对比功能示例【包含内容的对比】
2017/06/20 Python
用Pygal绘制直方图代码示例
2017/12/07 Python
运用PyTorch动手搭建一个共享单车预测器
2019/08/06 Python
在python tkinter界面中添加按钮的实例
2020/03/04 Python
pycharm全局搜索的具体步骤
2020/07/28 Python
美国休闲服装品牌:J.Crew Factory
2017/03/04 全球购物
美国在线乐器和设备商店:Musician’s Friend
2018/07/06 全球购物
木马的传播途径主要有哪些
2016/04/08 面试题
咖啡店的创业计划书,让你hold不住
2014/01/03 职场文书
大学生村官考核材料
2014/05/23 职场文书
七一党日活动总结
2014/07/08 职场文书
初中语文教学研修日志
2015/11/13 职场文书
学习社交礼仪心得体会
2016/01/22 职场文书
为什么不建议在go项目中使用init()
2021/04/12 Golang
vue+elementUI实现表格列的显示与隐藏
2022/04/13 Vue.js