Dies ist ein Problem mit Webpack v4, wenn die Regel:
{
Parser: { requireEnsure: false },
}
diese Ausgabe haben:
WARNUNG in ./node_modules/pdfjs-dist/build/pdf.js 7873:6-13
Kritische Abhängigkeit: Die require-Funktion wird so verwendet, dass Abhängigkeiten nicht statisch extrahiert werden können
Was ist der Vorteil, diese Regel zu aktivieren (da ich nicht glaube, dass wir sie standardmäßig aktivieren) und in welcher Zeile geht sie schief? Ist es im PDF.js-Quellcode oder im generierten Bundle-Code? Bitte geben Sie etwas mehr Informationen und den Inhalt von Zeile 7873 an.
Ich glaube nicht, dass die Webpack-Einstellung mit dem fakeWorkerFilesLoader
Code kompatibel ist, der in einigen Umgebungen als Fallback erforderlich ist, wenn der Benutzer die Worker nicht richtig konfiguriert hat, daher ist dieses Problem wahrscheinlich aus Sicht von PDF.js ungültig Aussicht.
Schließen, da ich auch nicht glaube, dass wir hier wirklich etwas tun können.
Was ist der Vorteil, diese Regel zu aktivieren?
Es sieht so aus, als hätte create-react-app
requireEnsure: false
da es sich nicht um eine Standardsprachfunktion handelt .
Dies führt zu jedem create-react-app
Projekt, das pdf.js verwendet, um die Warnung anzuzeigen;
./node_modules/pdfjs-dist/build/pdf.js
Critical dependency: require function is used in a way in which dependencies cannot be statically extracted
Ich verstehe nicht , diese gut genug , um zu wissen , ob es einen Weg gibt , den Fehlercode enthalten , die nicht die Warnung auslöst, aber da es sinnvoll erscheint ein Rückfall auf gehören, werde ich ein Problem öffnen auf dem create-react-app
Repo auch.
Ich bin mir nicht sicher, aber es sieht so aus, als ob eine mögliche Lösung für den Fallback-Code darin besteht, PDF.js als es6-Module zu veröffentlichen und so etwas wie Rollup zu verwenden, um den Fallback-Code separat zu versenden https://github.com/mozilla/pdf. js/issues/10317
Ich habe Probleme, dem Code fakeWorkerFilesLoader
zu folgen.
das ist in einigen Umgebungen als Fallback notwendig, wenn der Benutzer keine Worker konfiguriert hat
@Snuffleupagus könntest du das etwas
Ich habe genau das Problem, bekomme den genauen Fehler von einem Plugin, das auf pdf.js basiert (vue-pdf).
Der Fehler, den ich erhalte, ist:
WARNUNG in ./node_modules/pdfjs-dist/build/pdf.js 9818:60-67
Kritische Abhängigkeit: Die Funktion require wird so verwendet, dass Abhängigkeiten nicht statisch extrahiert werden können.
Ich bin mir nicht sicher, aber es sieht so aus, als ob eine mögliche Lösung für den Fallback-Code darin besteht, PDF.js als es6-Module zu veröffentlichen und so etwas wie Rollup zu verwenden, um den Fallback-Code separat zu versenden #10317
Dies wäre ausgezeichnet. Diese Warnung ist in jedem CRA-Projekt sehr ärgerlich.
Wird das @timvandermeij nie behoben? Ich frage mich nur, ob ich warten oder mich bewegen soll.
Es ist nicht klar geworden, dass dies wirklich etwas ist, das auf der PDF.js-Seite behoben werden muss, und wenn ja, welche Alternativen für require.ensure
sind. Wir können keinen Support für "create-react-app" bieten, daher ist es wahrscheinlich am besten, das Problem in ihrem Tracker zu melden.
Wenn https://github.com/mozilla/pdf.js/issues/10253#issuecomment -463377308 das Problem beheben würde, wird dies bereits in einer separaten Ausgabe nachverfolgt.
@timvandermeij Hallo, das ist mir in einem Vue.js-Setup passiert und ich habe alle Plugins ausprobiert, die ich finden konnte. Sie basierten alle auf pdf.js, und ich erhielt den gleichen Fehler:
WARNING in ./node_modules/pdfjs-dist/build/pdf.js 9818:60-67
Critical dependency: require function is used in a way in which dependencies cannot be statically extracted.
Für eine vorübergehende Lösung überschreiben Sie die React-Scripts-Regel .
Hilfreichster Kommentar
Es sieht so aus, als hätte
create-react-app
requireEnsure: false
da es sich nicht um eine Standardsprachfunktion handelt .Dies führt zu jedem
create-react-app
Projekt, das pdf.js verwendet, um die Warnung anzuzeigen;Ich verstehe nicht , diese gut genug , um zu wissen , ob es einen Weg gibt , den Fehlercode enthalten , die nicht die Warnung auslöst, aber da es sinnvoll erscheint ein Rückfall auf gehören, werde ich ein Problem öffnen auf dem
create-react-app
Repo auch.