实践实践验真理的唯一标准。
先分别在./
和./view
下运行$ yarn
安装依赖
然后
$ cd ./view
$ npm run build
$ cd ..
$ npm run build
$ npm start
先使用一个临时窗口加载一个本地HTML作为启动页,然后启动加载远程服务的窗口, 等待远程窗口加载好之后,再隐藏启动页,显示应用主页。
封装了几个IPC相关的函数,主进程中使用on
进行监听并给对应的请求做响应、
使用connection
建立持续事件服务;
在渲染进程中使用send
发送单次事件,只响应一次结果;
使用connect
建立持续事件的客户端,通过connect
、start
以及stop
进行控制。
在渲染进程中封装好一个统一的创建窗口函数, 之后都使用这个函数进行窗口的创建。
就是这样有个问题,就是窗口都是在各个渲染进程中管理的,没能统一,
可以改成通过IPC让主进程调用,再返回pid,最后通过remote.webContents.fromId
获取实例
但是想想没啥必要,毕竟有BrowserWindow.getAllWindows()
了,
倒是可以把ipcRenderer.on
封装成一些注册函数,返回一个remove函数在组件销毁的时候调一下
推荐使用electron-builder。
需要在package.json中添加build
配置,
建议使用file
字段指定需要打包的文件夹,否则默认为**/*
,其他配置看文档。
另外,electron必须放在devDependencies
里。
打包完成后会在dist
目录下生成安装包。