我正在构建一个网络应用程序,您可以在其中上传 pdf 并与它聊天。我正在使用 pdfjs-dist (模块版本 2.16.105)来阅读 pdf。在我的本地主机上一切正常,但在 Vercel 上部署后,我收到此错误 -
Setting up fake worker failed: "Cannot find module './pdf.worker.js'
Require stack:
/var/task/node_modules/pdfjs-dist/legacy/build/pdf.js
/var/task/.next/server/pages/api/process.js
/var/task/node_modules/next/dist/server/next-server.js
/var/task/___next_launcher.cjs".
这是我的网络应用程序的链接 - https://publang.vercel.app/
您可以上传 pdf,然后当您单击处理文件时,您会收到上述错误。
我正在使用 Typescript,并且我确实在 vercel 上部署了下一个 js 应用程序。 但我确实遇到了同样的错误。 通过以下代码修复了它。
const pdfjs = await import("pdfjs-dist/legacy/build/pdf.js");
pdfjs.GlobalWorkerOptions.workerSrc = new URL('pdfjs-dist/legacy/build/pdf.worker.js',import.meta.url,).toString();