当前位置: 首页 > news >正文

页面做的比较炫酷的网站百度投诉中心24人工客服电话

页面做的比较炫酷的网站,百度投诉中心24人工客服电话,克拉玛依商城网站建设平台,百度收录工具Electron中IPC 进程间通信 (IPC) 是在 Electron 中构建功能丰富的桌面应用程序的关键部分之一。在 Electron 中,进程使用 ipcMain 和 ipcRenderer 模块,通过开发人员定义的“通道”传递消息来进行通信。 本文介绍以下几个方面: 1-渲染进程到…

Electron中IPC

进程间通信 (IPC) 是在 Electron 中构建功能丰富的桌面应用程序的关键部分之一。在 Electron 中,进程使用 ipcMain 和 ipcRenderer 模块,通过开发人员定义的“通道”传递消息来进行通信。

本文介绍以下几个方面:

  • 1-渲染进程到主进程(单项)

ipcRender.send()
  • 2-主进程到渲染进程(单项)

WebContents.send()
  • 3-渲染进程到到主进程(双向)

ipcRender.invoke(渲染进程)
ipcMain.handle(主进程)

1.渲染进程到主进程

  • 渲染进程通过ipcRender.send()API发送消息

  • 主进程通过ipcMain.on()API接受信息

2.主进程到渲染进程

  • 主进程通过WebContents.send()发送数据

  • 渲染进程通过ipcRender.on()获取数据

3.渲染进程到主进程(双向)

  • 渲染进程通过invoke调用API

  • 主进程通过handle处理API

示例

功能:

  • 渲染进程发送111到主进程

  • 主进程发送222到渲染进程

  • 渲染进程invoke主进程

// main.js
const { app, BrowserWindow,ipcMain } = require("electron")
const path = require("path")
var id = "";
const createWindow = () => {const win = new BrowserWindow({width: 800,height: 600,show: false,webPreferences:{preload:path.join(__dirname,"./preload.js")}})win.loadFile("./index.html")win.show()id = win.id
}
​
app.whenReady().then(() => {createWindow()
})
​
ipcMain.on("messageToMain",(event,text)=>{// ipcMain.on 来接收渲染进程发送的数据console.log("主进程从渲染进程接收到的数据:"+text);// 获取当前窗口// BrowserWindow.webContents.send 发送数据BrowserWindow.fromId(id).webContents.send("messageFromMain","222")
})
​
// ipcMain.handle 返回invoke调用
ipcMain.handle("getData",()=>{return "333"
})
​
​
app.on("window-all-closed", () => {app.quit()
})
// preload.js
const { contextBridge, ipcRenderer } = require("electron")
contextBridge.exposeInMainWorld("electronIpc", {// 预加载脚本暴露 ipcRenderer.sendsend: (text) => { ipcRenderer.send('messageToMain', text) },// 预加载脚本暴露 ipcRenderer.ononGet: (callback) => {ipcRenderer.on("messageFromMain", (event, text) => {callback(text)})},// 预加载脚本暴露 ipcRenderer.invokegetData: () => { return ipcRenderer.invoke("getData") }
})
<!-- index.html -->
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Electron的ipc通讯</title>
</head>
<body><h2>渲染进程到主进程(单向)</h2><div><button id="btnToMain">渲染进程发送到主进程</button></div><div><input type="text" id="sendText"></div><br><br><div>收到主进程发送到渲染进程的消息:</div><div><input type="text" id="messageFromMain" style="width: 300px;"></div><br><div><button id="btnInvoke">渲染进程invoke主进程</button></div><div><input type="text" id="messageInvokeMain" style="width: 300px;"></div><script src="./index.js"></script>
</body>
</html>
// index.js
window.onload = () => {var btnToMain = document.getElementById("btnToMain");btnToMain.addEventListener("click", () => {var sendText = document.getElementById("sendText").value;window.electronIpc.send(sendText)})
​window.electronIpc.onGet((text) => {var messageFromMain = document.getElementById("messageFromMain");messageFromMain.value = text;})
​var btnInvoke = document.getElementById("btnInvoke");btnInvoke.addEventListener("click",async ()=>{var getData = await window.electronIpc.getData();var messageInvokeMain = document.getElementById("messageInvokeMain");messageInvokeMain.value = getData;})
}

效果

http://www.wangmingla.cn/news/26219.html

相关文章:

  • 重庆网站制作那家好直销怎么做才最快成功
  • 如何做淘宝代购网站常州seo
  • .win域名做网站怎么样潍坊seo关键词排名
  • 网站制作定制18站长工具权重
  • 给家乡做网站上海专业seo服务公司
  • 衡阳企业网站建设价格深度优化
  • 做网站用什么比较好百度指数是干嘛的
  • 扬州网站建设uc搜索引擎入口
  • 成都网站建设易维达好微信朋友圈广告投放代理
  • 做a免费网站请输入搜索关键词
  • 网站建设好公司哪家好专业竞价托管哪家好
  • 查询注册过的网站搜索引擎查重
  • 网站素材图片网络推广网络营销外包
  • 服装网都有哪些网站有创意的营销策划案例
  • 公司网站要怎么做软件开发培训机构排名
  • 吉林省高等级公路建设局网站广告公司品牌营销推广
  • 学校网站开发说明书文档产品宣传方式有哪些
  • 网站开发时seo岗位工作内容
  • 商务网站创建流程是什么抖音关键词优化排名靠前
  • 网站建设企业排名企业官网首页设计
  • 自己做网站能赚钱么厦门网站外包
  • 安卓app做网站外壳免费seo关键词优化服务
  • 自己做网站和凡科的区别徐州seo排名收费
  • 二级域名做网站有哪些缺点百度官方客服电话
  • 保定做公司网站的网页优化怎么做
  • 苏州品牌网站建设日本站外推广网站
  • 个人博客网站模板素材重庆今日头条新闻消息
  • 网络营销中网站的目的是超云seo优化
  • 外贸自建站多少钱网络公司名字大全
  • 政府部门网站建设需求南宁网站建设服务公司