if (!fallbackWorkerSrc && typeof document !== 'undefined') {
var pdfjsFilePath = document.currentScript && document.currentScript.src;
如果(pdfjsFilePath){
fallbackWorkerSrc = pdfjsFilePath.replace(/(.(?:min.)?js)(?.*)?$/i, '.worker$1$2');
}
}
有时“document.currentScript” === null, pdfjsFilePath === null,
函数 getWorkerSrc() {
如果(_worker_options.GlobalWorkerOptions.workerSrc){
返回_worker_options.GlobalWorkerOptions.workerSrc;
}
if (typeof fallbackWorkerSrc !== 'undefined') {
返回 fallbackWorkerSrc;
}
throw new Error('没有指定“GlobalWorkerOptions.workerSrc”。');
}
您应该始终明确指定 workerSrc,即通过在调用pdfjsLib.getDocument
pdfjsLib.GlobalWorkerOptions.workerSrc
之前设置pdfjsLib.getDocument
,因为回退只是一种尽力而为的解决方案,并不能保证在所有情况下都能正常工作。
你应该试试这个:
const pdfjs = await import('pdfjs-dist/build/pdf');
const pdfjsWorker = await import('pdfjs-dist/build/pdf.worker.entry');
pdfjs.GlobalWorkerOptions.workerSrc = pdfjsWorker;
...
你应该试试这个:
const pdfjs = await import('pdfjs-dist/build/pdf'); const pdfjsWorker = await import('pdfjs-dist/build/pdf.worker.entry'); pdfjs.GlobalWorkerOptions.workerSrc = pdfjsWorker; ...
我在使用你在 react 中给出的想法时遇到了困难
问题是安装组件时它不起作用
当我使用官方脚本时一切都很好,但它不适用于pdfjs-dist
const pdfjsLib = window['pdfjs-dist/build/pdf
pdfjsLib.GlobalWorkerOptions.workerSrc = '//mozilla.github.io/pdf.js/build/pdf.worker.js';
有什么想法吗? 我不想使用脚本
真诚地,我会在 pdf 上使用 react 抽象,因为 pdf.js 正式不支持 react :(
最有用的评论
你应该试试这个: