可以先去看看之前的
主程序即electron的main.js。
渲染程序即browserwindow物件新建的。
定義乙個js檔案這裡就叫renderer吧,在全域性定義乙個electron物件用來進行與html進行訂閱事件通訊。
global.electron = require('electron');
在browserwindow中通過node的path外掛程式取到並傳入這個js檔案,這樣在exe中的window上就有electron這個物件了。
new browserwindow(
width: 750,
height: 220,//712
webpreferences: );
主程序收發訂閱事件
接收:引入electron中的ipcmain通過這個api進行接收渲染程序傳送的事件並進行相應的處理
傳送:需要找到我們定義的這個渲染程序這裡我們定義的渲染程序是win所以拿這個名字來進行傳送
const = require('electron');
function createwindow() /index.html`);
getdevice()
// win.webcontents.opendevtools();//開啟除錯工具
win.on('close', () => );
win.on('maximize', (e) => )
win.on('unmaximize', (e) => )
ipcmain.on('start', (event, args) => );
ipcmain.on('stop', (event, args) => );
ipcmain.on('resize',(e,args) => )
}
html的傳送和接收
直接在window物件上就能取到這個electron物件進行通訊
window.electron.ipcrenderer.send("start",this.radioset)//傳送對於底層的東西還是要多去了解一下,這個事件訂閱是個非常好的設計包括node,webview通訊很多地方都用到了事件訂閱。window.electron.ipcrenderer.on('isstart', (event, message) => {})//接收
Electron 主程序和渲染程序互相通訊
說明 自主到從 從main到renderer的訊息傳遞,借助browerwindow.webcontents.send 傳送訊息。自從到主 從renderer到main的訊息傳遞,借助ipcrender和ipcmain傳送 接收訊息。事件機制 無論是browerwindow.webcontents....
electron 3 主程序與渲染程序
渲染程序不能直接引入browserwindow模組 借助remote模組,從remote中拿到主程序允許使用的模組 const require electron remote let btn document.queryselector btn btn.onclick function index....
主程序和渲染程序
chromium每個tab都是乙個程序 主程序 main process 可以使用和系統對接的api,建立選單,上傳檔案等等 建立渲染程序 全面支援node.js 只有乙個,作為整個程式的入口點 渲染程序 main process 可以有多個,每個對應乙個視窗 每個都是單獨的程序 全面支援node....