这篇写的一塌糊涂,草草掠过即可。
忆及二十年前在校园懵懵度日,继而八八六加八,亲睹某同辈VC6娴熟开发erp软件,不以其异,是时小年轻工资小半数只可晚一碗汤粉加两啤,有的是赚几铜板的兴奋和未知的憧憬,想着两三年功夫,吾亦可为之,及而职场垂暮,c++基本没怎么学,写望其项背而不能之语也是欺己欺人,人生不会有ticket two。说起那时,正是delphi不再,dotnet普及,VB流行,在书店买书,会发现VB书有的是,C#和VC的却很少,要么是干这一行的素质高,眼光到,筛过一层了,要么VB就是留给半知不懂的入行者啃的。专业是电子的我入行很菜,仅就硬件/2k/03做一些安装运维,没去啃也啃不动VB,某契合下10年始耕耘c#,其一趣事是,开始我打网线水晶头是平行线,是在一次传输信号故障状况下,上网搜索才得知有485A/B的线序,往事映目...
梦及一些挂碍,想着vc晒晒,就着traditional windows gui programming搜一下,QT,java这些字眼都是熟悉的,接着看到electron,的确,略读知曾海搜网过而纵,成见现在也是,高性能有c/c++,易用有c#,跨平台有java,QT,python,.net core,累,犯不着就js来啃gui啊,因搜的博文也谈及其菜和electron的易用,还是尝尝再论辣椒秋葵。
其主页,https://electron.nodejs.cn 或 https://www.electronjs.org/,有详细的初学教程,参照Electron in Action-2018.pdf,试着走了一遍,记录如下:
1.添加启动start模块必不可少
"scripts": { "start": "electron ." }
2.项目初始化npm init,description和author必不可少,没写forge会报错
2.app.on('window-all-closed'和app.on('activate'在跨平台时才可能用上,不写也能运行
3.看文档node的 global precess和document context不同的处理过程,故webPreferences: {preload: path.join(__dirname, 'preload.js')}这一项时必须的,且必须不在一个js文件里,这提法挠人痒痒啊
4.node的全局变量 __dirname等,在html文件内不起作用,只能放在js里
5.安装forge,“npm install @electron-forge/cli”,因为github是屏蔽了的,不懂@其妙,试过不加@就是安装不了,会弹出github验证
6.npm run make,out子目录的项目名下真见到有生成的exe文件