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 相关文章推荐
javascript indexOf函数使用说明
Jul 03 Javascript
JavaScript初学者应注意的七个细节详细介绍
Dec 27 Javascript
JS正则表达式大全(整理详细且实用)
Nov 14 Javascript
iframe实用操作锦集
Apr 22 Javascript
详解JavaScript中void语句的使用
Jun 04 Javascript
javascript实现类似于新浪微博搜索框弹出效果的方法
Jul 27 Javascript
javascript日期比较方法实例分析
Jun 17 Javascript
学习vue.js中class与style绑定
Dec 03 Javascript
JavaScript实现短信倒计时60s
Oct 09 Javascript
使用 Node.js 模拟滑动拼图验证码操作的示例代码
Nov 02 Javascript
10个经典的网页鼠标特效代码
Jan 09 Javascript
JQuery通过键盘控制键盘按下与松开触发事件
Aug 07 jQuery
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
mysql时区问题
2008/03/26 PHP
PHPMYADMIN导入数据最大为2M的解决方法
2012/04/23 PHP
PHP If Else(elsefi) 语句
2013/04/07 PHP
php自定义函数实现汉字转换utf8编码的方法
2016/09/29 PHP
PHP实现对文件锁进行加锁、解锁操作的方法
2017/07/04 PHP
php+ajax实现仿百度查询下拉内容功能示例
2017/10/20 PHP
php 下 html5 XHR2 + FormData + File API 上传文件操作实例分析
2020/02/28 PHP
PHP7原生MySQL数据库操作实现代码
2020/07/03 PHP
javascript 按回车键相应按钮提交事件
2009/11/02 Javascript
js原生态函数中使用jQuery中的 $(this)无效的解决方法
2011/05/25 Javascript
EasyUI 中 MenuButton 的使用方法
2012/07/14 Javascript
javascript中数组的sort()方法的使用介绍
2013/12/18 Javascript
JS小游戏之仙剑翻牌源码详解
2014/09/25 Javascript
实例讲解Jquery中隐藏hide、显示show、切换toggle的用法
2016/05/13 Javascript
详解AngularJS1.x学习directive 中‘&amp; ’‘=’ ‘@’符号的区别使用
2017/08/23 Javascript
解决JQuery全选/反选第二次失效的问题
2017/10/11 jQuery
从0到1搭建Element的后台框架的方法步骤
2019/04/10 Javascript
详解iview的checkbox多选框全选时校验问题
2019/06/10 Javascript
vue实现将一个数组内的相同数据进行合并
2019/11/07 Javascript
Python中生成器和迭代器的区别详解
2018/02/10 Python
Python3.4学习笔记之 idle 清屏扩展插件用法分析
2019/03/01 Python
python通过matplotlib生成复合饼图
2020/02/06 Python
sklearn+python:线性回归案例
2020/02/24 Python
Pytorch 使用 nii数据做输入数据的操作
2020/05/26 Python
在 Python 中使用 7zip 备份文件的操作
2020/12/11 Python
python抢购软件/插件/脚本附完整源码
2021/03/04 Python
Html5定位终极解决方案
2020/02/05 HTML / CSS
浅析HTML5页面元素及属性
2021/01/20 HTML / CSS
亚马逊印度站:Amazon.in
2017/10/15 全球购物
Kipling意大利官网:世界著名的时尚休闲包袋品牌
2019/06/05 全球购物
阿迪达斯印尼官方网站:adidas印尼
2020/02/10 全球购物
村居抓节水倡议书
2014/05/19 职场文书
家长对孩子的寄语
2015/02/26 职场文书
社区禁毒宣传活动总结
2015/05/07 职场文书
实习报告范文之电话客服岗位
2019/07/26 职场文书
nginx负载功能+nfs服务器功能解析
2022/02/28 Servers