在 React (CRA) 应用程序中,我创建了一个也导入 node_modules 的 WebWorker。开发应用程序时,我可以加载模块。但是当我构建应用程序时,无法加载 WebWorker 中的模块。我在 package.json 中有一个文件依赖项,此依赖项由我的 API、应用程序和 WebWorker 使用。
"dependencies": {
"protobuf-js": "file:public/electron/protobuf-js"
...
}
一旦 WebWorker 在使用
require()
的依赖项中导入文件,加载 WebWorker 时就会出现如下所示的错误。其他依赖项,例如 chart.js 可以在 WebWorker 中加载。
电子版本:27.1.3 Webpack 版本:5.5.0
老实说,这一切中最奇怪的事情是它在开发模式下工作,但不在构建应用程序中工作。
这可能是因为您的依赖项的版本,尝试将其更改为实际版本(而不是文件),重新安装所有依赖项并再次构建。
原来是Webpack 5 Web-Worker 的重复版本,构建后路径错误。 React 18、Electron,这个问题也在 Github 上讨论。