前言一开始并没有开发桌面应用的想法。一是我以前知道这个技术,但没有研究过。另一个是我懒惰……嗯,主要是懒惰。一开始只是做了一个命令行压缩工具,只实现了基本的功能。有关详细信息,请参阅minify-your-img。当然,这也是这款产品的前世今生。功能还不如现在的1/3,只实现了基本功能。单张图片,单文件夹压缩。当我进行到一半时,我认为这样做不是很聪明。是不是可以单独做一个桌面应用,所以就做了。项目创建使用官方命令创建基础项目:vueinitsimulatedgreg/electron-vuemy-project#my-project是你创建的项目名称项目描述地址:https://github.com/snow-sprite/CompressApp(如果你喜欢,或者帮助你,请点亮星星,螃蟹!)特点?单个文件夹拖压缩?单张图片压缩?多张图片拖压缩?多个文件夹拖压缩?文件夹和图片同时压缩时间拖拽压缩?在线图片只支持带后缀的,默认生成在系统的【下载】文件夹?支持应用自动(手动)更新ApitinyPngzip-local是否要压缩的图片格式是否支持,请到tinyPng官网查看,如果支持,将其添加到src/main/lib/imagesType.js的白名单中,设置项目截图踩坑并设置自动更新,应用下载完成后会自动退出并安装更新包,此时系统托盘程序已经过期//监听下载完成EventautoUpdater.on('update-downloaded',function(event){sendUpdateMessage({cmd:'update-downloaded',message:message.download})//退出并安装更新包autoUpdater.quitAndInstall()})同理:关闭窗口后,原来设置的最小化程序也失效了。解决方法是关闭窗口后销毁程序,点击托盘,重新打开一个新窗口*要再次打开系统托盘,需要先创建一个窗口*/if(mainWindow===null){createWindow()}mainWindow&&mainWindow.show()mainWindow&&mainWindow.focus()})Windows自动更新是成功,Mac自动更新失败(latest-mac.yml已经生成并上传到web服务器),暂时没找到原因。结论当然,世界上没有没有缺陷的应用,本项目也不例外。还有很多不足需要调试和改进。如果你有什么好的想法,欢迎Pr。参考electron-vueelectron-buildertinyPngApiziplocal
