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版本

<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


<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. vue-pdf注意事项

    2024-03-21 06:58:02       45 阅读
  2. vue 事件$on,$off注意事项

    2024-03-21 06:58:02       40 阅读
  3. Vue2:用ref方式绑定自定义事件注意事项

    2024-03-21 06:58:02       59 阅读
  4. vue2升级到vue3一些使用注意事项记录(二)

    2024-03-21 06:58:02       36 阅读
  5. 第19节:Vue3 在模板中展开时注意事项

    2024-03-21 06:58:02       61 阅读
  6. Vue组件选项编写代码特点和注意事项

    2024-03-21 06:58:02       56 阅读
  7. Vue.env文件:配置、用法和注意事项

    2024-03-21 06:58:02       39 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-21 06:58:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-21 06:58:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-21 06:58:02       82 阅读
  4. Python语言-面向对象

    2024-03-21 06:58:02       91 阅读

热门阅读

  1. Codeforces Round 935 (Div.3 E F)

    2024-03-21 06:58:02       43 阅读
  2. C# SetWindowPos函数

    2024-03-21 06:58:02       39 阅读
  3. 代码随想录Day29

    2024-03-21 06:58:02       41 阅读
  4. Vue3 v-model的使用

    2024-03-21 06:58:02       36 阅读
  5. 谈谈对跨站请求伪造(CSRF)的理解及其防御措施

    2024-03-21 06:58:02       45 阅读
  6. Linux查看8080端口是否启用

    2024-03-21 06:58:02       41 阅读
  7. 【Docker】Docker的常用命令知多少?

    2024-03-21 06:58:02       44 阅读
  8. @click 和 v-on:click 的区别

    2024-03-21 06:58:02       38 阅读
  9. 【积累】string和list

    2024-03-21 06:58:02       40 阅读
  10. 【积累】list

    2024-03-21 06:58:02       46 阅读
  11. 每日一题 第十六期 Codeforces Round 911 (Div. 2)

    2024-03-21 06:58:02       41 阅读
  12. dataGridView 绑定List 显示内容不刷新

    2024-03-21 06:58:02       44 阅读