您好,登錄后才能下訂單哦!
需求:簡單說~~有兩個pdf文件需在h6上展示,通過點擊按鈕切換不同文件的顯示
注:
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" > </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內容請搜索億速云以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持億速云!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。