摘要:主进程在里,运行里脚本的进程被称为主进程。渲染进程由于使用来展示页面,所以的多进程结构也被充分利用。每个的页面都在运行着自己的进程,这样的进程我们称之为渲染进程。在一般浏览器中,网页通常会在沙盒环境下运行,并且不允许访问原生资源。
主进程
渲染进程在 Electron 里,运行 package.json 里 main 脚本的进程被称为主进程。在主进程运行的脚本可以以创建 web 页面的形式展示 GUI。
由于 Electron 使用 Chromium 来展示页面,所以 Chromium 的多进程结构也被充分利用。每个 Electron 的页面都在运行着自己的进程,这样的进程我们称之为渲染进程。
在一般浏览器中,网页通常会在沙盒环境下运行,并且不允许访问原生资源。然而,Electron 用户拥有在网页中调用 Node.js 的 APIs 的能力,可以与底层操作系统直接交互。
主进程与渲染进程之间的通信可以从主进程中直接发送消息给渲染进程
//main.js //从主进程发送消息给渲染进程 mainWindow.webContents.send("main-process-messages", "main-process-messages show")
//index.html,渲染进程中接收消息 const electron = require("electron") const ipcRenderer = electron.ipcRenderer ipcRenderer.on("main-process-messages", function(event, message){ alert(message) })
通过ipcRenderer和ipcMain进行通信
这个是从渲染进程中发起
//index.html,渲染进程 onst electron = require("electron") const ipcRenderer = electron.ipcRenderer function sendTypeOne() { //向主进程发送消息 ipcRenderer.send("MainMsgFromRender","hellow") } // 监听主进程返回的消息 ipcRenderer.on("RenderMsgFromMain", function (event, arg) { alert(arg) })
//main.js const electron = require("electron") //主进程 const ipcMain = electron.ipcMain ipcMain.on("MainMsgFromRender",function (event, arg) { console.log(arg) event.sender.send("RenderMsgFromMain",arg) })
通过全局变量
//main.js global.sharedObject = { newTel: "000" }
//index.html,渲染进程 const remote = require("electron").remote function sendTypeTwo() { alert(remote.getGlobal("sharedObject").newTel) }
做了一个小demo,可以下载看看了解更清楚。
demo
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/89314.html
摘要:为了能使不同的进程互相访问资源并进行协调工作,才有了进程间通信。此时,就需要与渲染进程通信了。发消息,渲染进程收消息内部使用来发消息。 作者:钟离,酷家乐PC客户端负责人原文地址:https://webfe.kujiale.com/electron-ku-jia-le-ke-hu-duan-kai-fa-shi-jian-fen-xiang-jin-cheng-tong-xin/酷家...
摘要:为了能使不同的进程互相访问资源并进行协调工作,才有了进程间通信。此时,就需要与渲染进程通信了。发消息,渲染进程收消息内部使用来发消息。 作者:钟离,酷家乐PC客户端负责人原文地址:https://webfe.kujiale.com/electron-ku-jia-le-ke-hu-duan-kai-fa-shi-jian-fen-xiang-jin-cheng-tong-xin/酷家...
摘要:为了能使不同的进程互相访问资源并进行协调工作,才有了进程间通信。此时,就需要与渲染进程通信了。发消息,渲染进程收消息内部使用来发消息。 作者:钟离,酷家乐PC客户端负责人原文地址:https://webfe.kujiale.com/electron-ku-jia-le-ke-hu-duan-kai-fa-shi-jian-fen-xiang-jin-cheng-tong-xin/酷家...
摘要:当一个实例被销毁后,相应的渲染进程也会被终止。之所以命名为,主要是为了与主进程这个概念对应。部分在事件触发后才能使用。当全部窗口关闭时退出。主进程接收到消息并处理之后,会返回处理结果。 简介 Electron 是一个可以使用 Web 技术如 JavaScript、HTML 和 CSS 来创建跨平台原生桌面应用的框架。借助 Electron,我们可以使用纯 JavaScript 来调用丰...
摘要:对于主进程和渲染进程之间的通信,使用是很方便的。但是渲染进程之间呢哈哈,我这个码农看来又踩到一个坑了。方案一使用全局共享属性但不具备事件机制,没有实质的通信功能。方案二利用主进程做消息中转此方案还是很好的。 菜鸟的 Electron 踩坑集锦。 对于 主进程和渲染进程之间的通信,使用 IPC 是很方便的。但是渲染进程之间呢? 哈哈,我这个码农看来又踩到一个坑了。 方案一: 使用全局共享...
阅读 3158·2021-10-14 09:42
阅读 3564·2019-08-26 13:56
阅读 3443·2019-08-26 11:59
阅读 938·2019-08-23 18:00
阅读 2195·2019-08-23 17:51
阅读 3522·2019-08-23 17:17
阅读 1478·2019-08-23 15:11
阅读 5145·2019-08-23 15:05