vue-pdf的注意事项

vue2项目

node版本切换到14.21.3

npm install --save vue-pdf@4.2.0
npm install pdfjs-dist@2.5.207

\^ 注意:一般情况下,执行上述命令就可以解决这个问题,但有时候在执行完后还是不行,这时候如果你执意要搜索为什么,答案普遍都是这个,有可能还有有一个说是脚手架版本太高,也就是@vue/cli版本是4.5以上,需要降一下版本,这时候可不要贸然去降低脚手架版本了,原因可能不是这个,注意了,vue-pdf的最新版本是2020年发布的,距离现在已经有4年了, 我们都忽视了node版本,那时候的node版本可没有我们现在安装的那么高,所以就会出现不兼容的情况,(当时我使用的是node16,切换到14版本就可以了)这时候换个node版本,删除node_modules文件夹重新编译就可以解决引入报错的问题,如果不想卸载node可以参考nvm教程,快速切换node版本。

js 复制代码
<template>
  <div class="home">
    <pdf
          v-for="i in pageCount"
          :src="pdfUrl"
          :key="i + 'pdf'"
          :page="i"
          class="pdf-item"
      ></pdf>
  </div>
</template>
<script>
import pdf from 'vue-pdf'
export default {
    data() {
    return {
        pageCount:1,
        pdfUrl:"http://storage.xuetangx.com/public_assets/xuetangx/PDF/PlayerAPI_v1.0.6.pdf"
    };
  },
  components: {pdf},
  mounted() {
    this.previewFile()
  },
  methods:{
    async previewFile() {
      try {
        let loadingTask = pdf.createLoadingTask(this.pdfUrl);
        loadingTask.promise.then(pdf => {
          this.pageCount = pdf.numPages;
        }).catch((e) => {
          console.log("pdf初始化错误", e);
        })
      } catch (e) {
        console.log("pdf加载出错了", e);
      }
    }
  }
}
</script>

vue3项目

npm install @vue-office/pdf vue-demi@0.14.6

js 复制代码
<template>
  <div class="apdd">
    <vue-office-pdf 
        :src="pdfUrl"
        @rendered="renderedHandler"
        @error="errorHandler"
    />
  </div>
</template>
  <script setup>
  //引入VueOfficePdf组件
import VueOfficePdf from '@vue-office/pdf'
import { ref, onMounted, nextTick } from "vue";
const pageCount = ref(1);
const pdfUrl = ref(
  "http://storage.xuetangx.com/public_assets/xuetangx/PDF/PlayerAPI_v1.0.6.pdf"
);

const renderedHandler = () => {
  console.log("渲染完成")
};
const errorHandler = () => {
  console.log("渲染失败")
};
</script>
相关推荐
慧都小妮子1 小时前
Aspose.CAD for .NET 26.6 更新发布
pdf·.net·3d渲染·cad·pdf导出·ifc编辑
gis开发之家1 小时前
《Vue3 从入门到大神35篇》Vue3 源码详解(五):effect 依赖收集原理——track 与 trigger 是如何工作的?
javascript·typescript·前端框架·vue3·vue3源码
橘子星2 小时前
我一个前端切图仔,凭什么能在浏览器里跑大模型?
前端·javascript·前端框架
半个落月2 小时前
用 LangChain JS 做可控写作实验:理解温度参数、提示词与异步调用
javascript·人工智能·后端
观远数据2 小时前
Excel到数据资产池:文件数据入湖的治理规范怎么建
前端·javascript·excel
CoderWeen2 小时前
我写了个能一步步点着看的 Dijkstra 可视化项目(Vue3 + Leaflet + Generator)
前端·javascript·vue.js
无人生还3 小时前
第 1 篇:从 Vue3 到 React 的思维转变
前端·vue.js·react.js
蝉蜕日记3 小时前
AccumuPDF高级版 v2.57 | 视图文转换PDF,合并分割压缩
android·智能手机·pdf·生活·软件需求
就业发动机3 小时前
我用 Tauri 做了一个约 1.5 MB 的开源屏幕标注工具:MarkerOn
vue.js·rust
爱分享的程序猿-Clark3 小时前
【前端分享】vue开发项目,如何实现 从A页面跳转到B页面,并传值!
前端·javascript·vue.js