electron 渲染进程调用主进程_Electron 主进程、渲染进程及进程间的通信

简介

Electron是由GIthub开发,用HTML、CSS、JS来构建跨平台桌面应用程序的一个开源库。Electron将Chromium和Nodejs合并到同一个运行时环境中,并将其打包为Mac、Windows、Linux系统下的应用。可以将其看作是一个由JS控制的迷你版的Chromium浏览器。

主进程、渲染进程

Electron打包的应用包含两个部分:Electron的环境(node) — 主进程、web渲染环境 — 渲染进程。

Electron中,入口是js文件(通常为package.json里的main脚本),运行此文件的进程即为主进程,在主进程中使用BrowserWindow模块可以创建并管理web页面,也就是应用的GUI。

const {BrowserWindow} = require('electron');

// 创建浏览器窗口

let win = new BrowserWindow({width: 320, height: 572, resizable: true});

// 加载本地的文件

win.loadURL('file://' + __dirname + '/index.html');

// 打开调试窗口

win.webContents.openDevTools();

在主进程创建的每个web页面都运行着自己的进程,即渲染进程,渲染进程各自独立。

主进程和渲染进程之间是相互隔离的,无法直接进行数据通信。

进程间通信

Web页面因为安全限制,不能直接访问原生的GUI资源,Electron也一样,渲染进程如果想要进行原生的GUI操作,必

你可能感兴趣的:(electron,渲染进程调用主进程)