我在 Vue/Quasar Vite 项目中创建了一个自定义 PDF 查看器组件,该项目正在构建为一个库。在本地使用该库时,一切正常。但是当部署到生产环境时,我收到以下错误:
Setting up fake worker failed: Failed to fetch dynamically imported module
按照 PDF.js 文档,我这样指定工作人员:
const workerUrl = new URL('pdfjs-dist/build/pdf.worker.mjs', import.meta.url).href
PDFJS.GlobalWorkerOptions.workerSrc = workerUrl;
我也尝试过:
const workerUrl = new URL('../../../../node_modules/pdfjs-dist/build/pdf.worker.mjs', import.meta.url).href
node_modules
中的文件会被Vite捆绑,所以不要使用node_modules
中的路径。
相反,您可以使用 显式 URL 导入:
import workerUrl from 'pdfjs-dist/build/pdf.worker.mjs?url'
// Also supports dynamic import:
// await import('pdfjs-dist/build/pdf.worker.mjs?url')