Pdf.js: Aucun "GlobalWorkerOptions.workerSrc" spécifié.

Créé le 21 janv. 2019  ·  4Commentaires  ·  Source: mozilla/pdf.js

if (!fallbackWorkerSrc && typeof document !== 'undefined') {
var pdfjsFilePath = document.currentScript && document.currentScript.src;
if (pdfjsFilePath) {
fallbackWorkerSrc = pdfjsFilePath.replace(/(.(?:min.)?js)(?.*)?$/i, '.worker$1$2');
}
}
Parfois "document.currentScript" === null, pdfjsFilePath === null,

fonction getWorkerSrc() {
si (_worker_options.GlobalWorkerOptions.workerSrc) {
return _worker_options.GlobalWorkerOptions.workerSrc;
}
if (typeof fallbackWorkerSrc !== 'undefined') {
retourner fallbackWorkerSrc;
}
throw new Error('Aucun "GlobalWorkerOptions.workerSrc" spécifié.');
}
image

Commentaire le plus utile

Tu devrais essayer ceci :

  const pdfjs = await import('pdfjs-dist/build/pdf');
  const pdfjsWorker = await import('pdfjs-dist/build/pdf.worker.entry');

  pdfjs.GlobalWorkerOptions.workerSrc = pdfjsWorker;

  ...

Tous les 4 commentaires

Vous devez toujours spécifier explicitement le workerSrc, c'est-à-dire en définissant pdfjsLib.GlobalWorkerOptions.workerSrc avant d'appeler pdfjsLib.getDocument , car le repli n'est qu'une solution au mieux qui n'est pas garantie de fonctionner correctement dans toutes les situations.

Tu devrais essayer ceci :

  const pdfjs = await import('pdfjs-dist/build/pdf');
  const pdfjsWorker = await import('pdfjs-dist/build/pdf.worker.entry');

  pdfjs.GlobalWorkerOptions.workerSrc = pdfjsWorker;

  ...

Tu devrais essayer ceci :

  const pdfjs = await import('pdfjs-dist/build/pdf');
  const pdfjsWorker = await import('pdfjs-dist/build/pdf.worker.entry');

  pdfjs.GlobalWorkerOptions.workerSrc = pdfjsWorker;

  ...

J'ai eu du mal à utiliser l'idée que vous avez donnée en réaction
le problème est que cela ne fonctionne pas lorsque le composant est monté
quand j'utilise le script officiel tout va bien mais ça ne marche pas avec pdfjs-dist

const pdfjsLib = window['pdfjs-dist/build/pdf
pdfjsLib.GlobalWorkerOptions.workerSrc = '//mozilla.github.io/pdf.js/build/pdf.worker.js';

une idée pour ça ? Je préférerais ne pas utiliser le script

Sincèrement, j'utiliserais une abstraction de réaction sur les pdf puisque pdf.js ne prend pas officiellement en charge la réaction :(

Cette page vous a été utile?
0 / 5 - 0 notes