Electron开发 —— 注意事项汇集
2020-08-27 本文已影响0人
潇潇剑_易水阁
我行我素,总有自挖坑的时候
序:
- 谨为记录一些当下可能需要注意的事项,让我疲倦的是,有些注意真的是曲线行车,每当此时很希望能掌控规则,奈何这么多事,一人何以责全,罢了罢了,强迫症而已
事项:
1. 官方API演示Demo模板 截至目前当前版本仍为7.2.4,里面的写法有些和最新的已不同,比如渲染进程调用ipcRenderer不变,但是主进程调用ipcMain已经移至remote对象,使用时需要注意,其实最好就是看你当前使用的electron版本的官方文档为佳,包括我现在说的这些,到了不同版本又可能会不一致
2. 10.X版本的electron在Chromium运行时require的electron版本缺失很多重要的对象,比如remote,仅暴露重要的ipcRenderer,本系列依然以9.X版本为主,此版本依然可以取得ipcMain等对象而非必须在node运行时下,至于10.X版本为啥出现这种情况,尚未去了解,感兴趣的可以研究下,不过不影响主进程这些对象的使用,毕竟这些版本没变的依然是订阅发布事件模式,9.x调用remote会有以下警告(当然此系列不会因为这个放弃这种调用方式,其实仅仅是希望应用拥有H5的快速UI构建能力以及掌控pc平台的原生api能力而已)
The 'remote' module is deprecated and will be disabled by default in a future version of Electron. To ensure a smooth upgrade and silence this warning, specify {enableRemoteModule: true} in the WebPreferences for this window.
3. ipcMain和ipcRenderer的on事件中listener的参数args不能为function,字符串和对象均可,为function时的错误信息如下:
An object could not be cloned