如何解决 electron-api-demo 的打包白屏问题
发布于 作者:苏南大叔 来源:程序如此灵动~electron
官方有个electron-api-demo
的例子,是个学习electron
的好帮手。从github
拉取到对应的代码后,我们可以成功的start
这个项目。但是,我们试图构建这个项目到可执行文件后,却会遇到白屏等问题。那么,苏南大叔在本篇文章中,将要讲述如何处理解决这个问题。
本文测试环境:electron@1.7.9
,mac
。
问题描述
本篇文章的主角代码可以从这里下载到:
下面的命令是调试启动命令:
npm start
然后,苏南大叔通过package.json
里面定义好的打包命令,进行打包。您可以根据您的实际情况,选择打包win
还是mac
。
npm run package:mac
npm run package:win
然后,执行得到的可执行文件的时候,你就可能会看到这样的错误提示,提示缺少glob
模块。
解决了这个问题后,我们还可能碰到下面的错误提示。
解决方案
解决方案是这样的:
npm install glob electron-settings --save
npm run package:mac
同时,考虑到electron
的版本问题(参见 https://newsn.net/say/electron-packager-control-version.html ),我们还可以直接修改package.json
文件,然后再执行yarn
和packager
。修改的地方,如下图所示。
这样处理过的packager
的安装包,就可以顺利使用了。而不会白屏,或者提示缺少模块了。
重点是下面这句话,--save
是重点中的重点,--save-dev
/-D
在默认情况下,打包之后是会丢失的。
npm install glob electron-settings --save
经过实践,用yarn
安装glob
和electron-settings
的话,可能是不能解决问题的。还是换成最正统的npm
吧。
总结
白屏问题,在electron
开发的过程中,比较常见。如果排除掉写的代码错误后,一般可以定位为node_modules
文件内的问题。可以删除掉这个文件夹内的内容,然后重新yarn
。看看是否正常。或者利用devtools
,来查找缺失的模块,再利用npm
安装对应模块到项目根目录,然后再重新打包。
更多苏南大叔带来的electron
的精彩文章,请点击这里查看:
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。
苏南大叔,您好!electron 4.1.3 支持RHEL 7 arm64吗?在RHEL 7 arm64上,我安装了electron-quick-start,但是在执行npm start后,出现了白屏问题。但在RHEL 7 x86_64上,同样的操作,结果是正常的。
Chrome(Chromium)是不是就不支持RHEL7 arm64 平台?
希望能得到老师的指点,谢谢!
您好,我有个问题想请教一下 我在是在做一个读取txt来播放音频 (electron + node 的 fs) 我一开始是自己模拟写入在读取是ok的 后期是在linux打开桌面应用读取--》别人写入的txt来判断播放音频 可是我发现electron+nodejs 在读取2次后会桌面应用白屏 并且是fs.watchFile也没有执行 是为什么 哭死了第一次用electron
打开console,里面一般都会有错误提示的.... devtools ... 打开它....