首页 > 解决方案 > 在打包的电子中找不到“电子获取”

问题描述

我目前正在尝试打包我的电子(-forge)(Webpack,React,TS)应用程序,该应用程序在渲染器进程中使用电子获取:

const fetch = window
.require("electron").remote
.require("electron-fetch").default;

如果我从yarn start应用程序开始工作正常。

但是在运行打包的应用程序(从yarn package)时,我收到以下错误:

 Uncaught Error: Cannot find module 'electron-fetch'
 Require stack:
 - path_to_app/resources/app/.webpack/main/index.js

删除 electron-fetch 后,打包的应用程序运行良好。

节点:v14.17.4
纱线:1.22.11

标签: typescriptwebpackelectronelectron-forge

解决方案


可能是 Electron 无法读取app.asar 中的electron-fetch 二进制文件。确保在生产中从 app.asar 中排除electron-fetch模块,或者不要将您的应用程序打包为 asar 加密。阅读此问题Unable to access a file inside asar 包


推荐阅读