被迫写了个 Electron 模板

318 天前
 mioktiar56

先吐槽一下吧: 我本来是做 C++客户端开发的,公司之前一直是用的 Qt/Duilib+CEF 的模式开发客户端,一直平安无事,可能过于无事了吧,最近的一个产品想着用一些现在热门的 Electron ,一方面和前沿技术对接,另一方面也可以让前端来分担一部分客户端的开发工作,比如本地配置、文件下载这些。

但实际开发中才发现公司的前端开发对客户端和系统方面的知识实在是太匮乏了,比如不知道什么是任务栏和系统托盘、文件路径和目录也分不清,主进程各种 js 异常满天飞,客户端咔咔崩溃......Electron 和 vue 结合也是一堆的坑。但既然已经选择了这个方案,也不能中途换方案,没办法,我只能硬着头皮学 Electron 和 vue 了,让前端专注写 Vue 页面部分,我写 Node.js 和 Electron 部分,项目总算坎坷的上线了,寄希望于后面慢慢重构吧。

基于上面的教训,在项目开发完之后,我写了个 Electron 模板,争取后面的项目直接基于这个模板能够让前端平稳的参与进来,尽量抹平 web 开发和客户端开发之间的差异吧。

大家可以看看我的模板,多提意见,谢谢

https://github.com/winsoft666/electron-vue3-boilerplate

3311 次点击
所在节点    程序员
30 条回复
jianchang512
317 天前
Electron-Egg.
不考虑这个吗,感觉用起来更简单
DSKcpp
317 天前
@ljsh093 我的项目几乎每个操作都有 IO 操作 ,卡是不可能卡的,fs/promises + async await
flyqie
317 天前
@wangtian2020 #1

没记错的话,ipc 是方便解耦吧。。

有些项目分离开用 ipc 还是挺方便的。
linuxsteam
317 天前
写 qt 的写这玩意太简单了
mioktiar56
317 天前
@asdhak 这个项目我看了,有点用前端是思维在做客户端,比如它用的 vue 单页面,客户端通常是多窗口的,这种会导致每个客户端窗口不独立,窗口会加载一些不必要的东西。
只是我的一点看法
mioktiar56
317 天前
@DesnLee 我试过最新版的 Electron ,可以打包压缩到 55M 左右。如果太大了,你看看是不是 node_modules 里面有太多非主进程需要的东西。理论上 vue 前端项目 build 之后,node_modules 里面的依赖都不需要了
horizon
316 天前
@dx123 #2
这里的产品我觉得是指真正意义上的产品,而不是产品经理?
mioktiar56
312 天前
@horizon 产品经理要求这个产品用 xx 技术
horizon
312 天前
@mioktiar56 #28
那你这有点离谱了
mioktiar56
312 天前
@horizon 产品说他大学是学的计算机,和老板一顿吹,于是.......

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/1027702

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX