electron监听网页_Electron 进程通信

本文作者:IMWeb laynechen

未经同意,禁止转载

Electron 中的进程分类

在 Electron 中,存在两种进程:主进程和渲染进程。

主进程 (Main Process)

一个 Electron 应用只有 一个主进程

当我们执行 electron . 命令后, Electron 会运行当前目录(.)下的 package.json 文件中 main 字段指定的文件。而运行该文件的进程既是主进程。

运行在主进程中的脚本可以通过创建一个窗口,并传入 URL,让这个窗口加载一个网页来展示图形界面。

与创建 GUI 相关的接口只应该由主进程来调用。

渲染进程 (Renderer Process)

在Electron里的每个页面都有它自己的进程,叫作渲染进程。主进程通过实例化 BrowserWindow,每个 BrowserWindow 实例都在它自己的渲染进程内返回一个 web 页面。当 BrowserWindow 实例销毁时,相应的渲染进程也会终止。

渲染进程由主进程进行管理。每个渲染进程都是相互独立的,它们只关心自己所运行的 web 页面。

问题

这篇文章主要要解决的问题是:

Electron 与 View 层(网页),也就是主进程与渲染进程是如何进行通信的?

不同的通信是如何实现的?

先解决第一个问题。

Electron 与 View 层(网页)是如何进行通信的?

Electron 提供了两种通信方法:

1. 利用 ipcMain 和 ipcRenderer 模块

官方文档 上有使用这两个模块进行进程通信的例子:

// In main process.

const {ipcMain} = require('electron')

ipcMain.on('asynchronous-message', (event, arg) => {

console.log(arg) // prints "ping"

event.sender.send('asynchronous-reply', 'pong')

})

ipcMain.on('synchronous-message', (event, arg) => {

consol

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值