[类型错误:无法读取未定义的属性“GlobalWorkerOptions”]

DFX*_*yễn 7 javascript npm vue.js pdfjs-dist

我的 pdfjs-dist 版本: "pdfjs-dist": "^2.4.456" 这是导入我的代码:

import PDFJS from 'pdfjs-dist'
import pdfjsWorker from 'pdfjs-dist/build/pdf.worker.entry'
Run Code Online (Sandbox Code Playgroud)

当我打电话时:

PDFJS.GlobalWorkerOptions.workerSrc = pdfjsWorker
this.loadingTask = PDFJS.getDocument({ data: self.pdfData })
Run Code Online (Sandbox Code Playgroud)

它返回此错误:[TypeError:无法读取未定义的属性“GlobalWorkerOptions”]

我尝试安慰这个:PDFJS,它返回undefinded

所以当我在互联网上尝试这个解决方案时,我添加

<script src="https://cdnjs.cloudflare.com/ajax/libs/pdf.js/2.5.207/pdf.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

在我index.htmladd var PDFJS = window['pdfjs-dist/build/pdf'];

然后它就可以完美工作...但我不知道为什么第一种方法对我不起作用...而且我不想从 CDN 使用它,因为我认为它对于我的项目来说不稳定。那么你们能给我指出我在这里错过的一点吗?我试图环顾四周node-modules以找出答案,但我仍然不明白为什么我不能import PDFJS from 'pdfjs-dist'

DFX*_*yễn 14

我解决了我的问题 我不知道这是否是问题的根源,但我只是简单地从 更改为 import PDFJS from 'pdfjs-dist'import * as PDFJS from 'pdfjs-dist'它工作得很好。