Electron学习(二)之主进程与渲染进程的通讯
2022/6/30 5:19:29
本文主要是介绍Electron学习(二)之主进程与渲染进程的通讯,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
模拟主进程与渲染进程的通讯过程
渲染进程
根目录下添加renderer.js
,既支持node js
也支持dom js
,示例代码如下:
//这是渲染进程 const {ipcRenderer}=require("electron") //下面是从渲染进程向主进程发送消息 window.addEventListener('DOMContentLoaded',()=>{ ipcRenderer.send("message","I am from the rendering process!") ipcRenderer.on("reply",(event, args)=>{ document.getElementById('message').innerHTML=args }) })
主进程
示例代码如下:
const {app,BrowserWindow,ipcMain}=require("electron") //ready:当electron完全加载,准备好创建BrowserWindow的时候 app.on('ready',()=>{ const win=new BrowserWindow({ width:800, height:600, webPreferences:{ //意思是在man.js中可以使用nodejs的api nodeIntegration:true, //加上这段代码后支持node Api contextIsolation: false } }) win.loadFile("index.html"); ipcMain.on("message",(event, args)=>{ console.log(args) // event.sender.send("reply","I am the main process,Over!") // event.sender和win是一样的 win.send("reply","I am the main process,Over!") }) })
index页面
示例代码如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <!-- https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP --> <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'"> <link href="./styles.css" rel="stylesheet"> <title>Hello World!</title> </head> <body> <h1>Hello World!</h1> <p id="message"></p> <!--渲染进程添加--> <script src="./renderer.js"></script> </body> </html>
运行效果
这篇关于Electron学习(二)之主进程与渲染进程的通讯的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享