Electron React App在开发中运行良好,但打包后却无法正常工作

时间:2018-06-27 04:58:53

标签: reactjs electron electron-builder

我已经使用React构建了一个Electron应用程序。我正在使用Electron-prebuilt-compile使其与React一起正常工作。当我进行开发并仅使用npm start运行它时,一切工作都非常完美。我完成了版本1,需要将其打包以安装在其他计算机上。我正在使用Electron-builder来做到这一点。我能够顺利运行此程序,而没有任何错误。然后,我运行它生成的.exe,最终收到意外的令牌错误(它指向一个导入)。好像我将其打包后,就无法再分辨进出口是什么了,我认为这是电子预编译器的用途。我可能会缺少一些东西吗?我遵循了一些不同的指南,还尝试了不同的打包脚本并获得了相同的结果。

这是该项目的我的仓库: Click here for GitHub Repo

如果要对其进行测试,则需要创建一个测试Firebase数据库。然后,像下面一样创建一个.env文件,但附带您的Firebase信息。或者直接将您的信息扔到app.jsx文件中。

FIREBASE_APIKEY = 
FIREBASE_AUTHDOMAIN = 
FIREBASE_DATABASEURL = 
FIREBASE_PROJECTID = 
FIREBASE_STORAGEBUCKET = 
FIREBASE_MESSAGINGSENDERID = 

1 个答案:

答案 0 :(得分:0)

在类似情况下对我有用的是从依赖中删除electron,听起来很奇怪。实际上,您不需要它,因为electron-prebuilt-compile提供了自己的电子版本(可通过electron访问),该版本可与React和ES6一起使用。那是您要使用的电子,而不是常规的electron,它对开箱即用的东西不起作用。

https://www.npmjs.com/package/electron-prebuilt-compile处查看电子预编译文档,其中显示“现在您可以运行electron来运行电子:”

这是我的工作项目中所有各种“电子”依赖性(也许有些是重复的):

"electron-forge": "^5.2.2",
"electron-prebuilt-compile": "2.0.0"
"electron-compile": "^6.4.2",
"electron-rebuild": "^1.7.3",
"electron-squirrel-startup": "^1.0.0",
"electron-window-state": "^4.1.1",