这里先介绍一个关于electron的前提,也是走出这个坑的基础知识。
electron的思想:用于启动程序的main.js 为主线程,而其他js(无论是html外联的js,还是内联使用<script></script>包含的js代码)都为子线程。
于是这个问题就简化为子线程如何调用主线程或者主线程调用子线程。
在查看文档以后发现
主线程使用的是
ipcMain模块
而子线程使用的是
ipcRenderer模块
main.js(用于创建最原始的窗口的js文件)
...... app.on('ready', function() { ...... ipcMain.on('close-all-windows',function(event, pm){ //pm是接受的参数 mainWindow.destroy() }) ...... }) ......
index.js(其他页面的js文件)
ipcRenderer.send('close-all-windows', 'close');