pdf 在线预览之 vue-pdf插件
vue-pdf
支持到ie11
npm安装:npm install --save vue-pdf
组件template:
<div class="show-pdf"><div>
v-if="pdfSrc"
:src="pdfSrc"
:page="currentPage"
@num-pages="pageCount=$event"
@page-loaded="currentPage=$event"
@loaded="loadPdfHandler"
></pdf>
</div>
<p class="arrow2" v-if="pdfSrc">
<span @click="changePdfPage(0)" :class="{grey: currentPage==1}">上一页</span>
{{currentPage}} / {{pageCount}}
<span
@click="changePdfPage(1)"
:class="{grey: currentPage==pageCount}"
>下一页</span>
</p>
</div>
<script>import pdf from "vue-pdf";
export default {
name: "Pdf",
components: {
},
props: ["dochref", "doctype"],
watch: {
dochref(val) {
console.log("pdfSrc");
console.log(val);
this.pdfSrc = val;
},
pdfSrc(val) {},
doctype(typeval) {
this.typeValue = typeval;
}
},
data() {
return {
typeValue: "",
pdfSrc: "",
currentPage: 0, // pdf文件页码
pageCount: 0, // pdf文件总页数
numPages: 1,
activeIndex: 0
};
},
methods: {
// 改变PDF页码,val传过来区分上一页下一页的值,0上一页,1下一页
changePdfPage(val) {
if (val === 0 && this.currentPage > 1) {
this.currentPage--;
}
if (val === 1 && this.currentPage < this.pageCount) {
this.currentPage++;
}
},
// pdf加载时
loadPdfHandler(e) {
this.currentPage = 1; // 加载的时候先加载第一页
}
},
mounted: function() {
this.pdfSrc = "";
this.pdfSrc = this.dochref;
}
};
</script>
自己的页面中引用
<template><div class="hello">
<showPdf
v-if="docInfo.type == 'pdf'"
:doctype="docInfo.type"
:dochref="docInfo.href"
></showPdf>
</div>
</template>
<script>
import showPdf from "./show-pdf-word/show-pdf";
export default {
name: 'HelloWorld',
components: {
showPdf
},
data () {
return {
msg: 'Welcome to Your Vue.js App',
docInfo: {
type: "pdf",
href: "http://125.35.91.158:8099/group1/M00/02/AF/wKgAplxrloqAdR6NAAcOcVILFv0518.pdf"
},
}
},
mounted(){
}
}
</script>
效果如下
如果有电子签章 是显示不出来的
需要改动源码 注释掉type判断
效果如下 这样章就出现了~~~
以上是 pdf 在线预览之 vue-pdf插件 的全部内容, 来源链接: utcz.com/z/378957.html