国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

electron進程與進程之間的通信

sihai / 2354人閱讀

摘要:主進程在里,運行里腳本的進程被稱為主進程。渲染進程由于使用來展示頁面,所以的多進程結構也被充分利用。每個的頁面都在運行著自己的進程,這樣的進程我們稱之為渲染進程。在一般瀏覽器中,網頁通常會在沙盒環境下運行,并且不允許訪問原生資源。

主進程

在 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

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/89314.html

相關文章

  • Electron】酷家樂客戶端開發實踐分享 — 進程通信

    摘要:為了能使不同的進程互相訪問資源并進行協調工作,才有了進程間通信。此時,就需要與渲染進程通信了。發消息,渲染進程收消息內部使用來發消息。 作者:鐘離,酷家樂PC客戶端負責人原文地址:https://webfe.kujiale.com/electron-ku-jia-le-ke-hu-duan-kai-fa-shi-jian-fen-xiang-jin-cheng-tong-xin/酷家...

    winterdawn 評論0 收藏0
  • Electron】酷家樂客戶端開發實踐分享 — 進程通信

    摘要:為了能使不同的進程互相訪問資源并進行協調工作,才有了進程間通信。此時,就需要與渲染進程通信了。發消息,渲染進程收消息內部使用來發消息。 作者:鐘離,酷家樂PC客戶端負責人原文地址:https://webfe.kujiale.com/electron-ku-jia-le-ke-hu-duan-kai-fa-shi-jian-fen-xiang-jin-cheng-tong-xin/酷家...

    aervon 評論0 收藏0
  • Electron】酷家樂客戶端開發實踐分享 — 進程通信

    摘要:為了能使不同的進程互相訪問資源并進行協調工作,才有了進程間通信。此時,就需要與渲染進程通信了。發消息,渲染進程收消息內部使用來發消息。 作者:鐘離,酷家樂PC客戶端負責人原文地址:https://webfe.kujiale.com/electron-ku-jia-le-ke-hu-duan-kai-fa-shi-jian-fen-xiang-jin-cheng-tong-xin/酷家...

    Wuv1Up 評論0 收藏0
  • Electron 快速入門

    摘要:當一個實例被銷毀后,相應的渲染進程也會被終止。之所以命名為,主要是為了與主進程這個概念對應。部分在事件觸發后才能使用。當全部窗口關閉時退出。主進程接收到消息并處理之后,會返回處理結果。 簡介 Electron 是一個可以使用 Web 技術如 JavaScript、HTML 和 CSS 來創建跨平臺原生桌面應用的框架。借助 Electron,我們可以使用純 JavaScript 來調用豐...

    Drummor 評論0 收藏0
  • Electron 渲染進程之間通信

    摘要:對于主進程和渲染進程之間的通信,使用是很方便的。但是渲染進程之間呢哈哈,我這個碼農看來又踩到一個坑了。方案一使用全局共享屬性但不具備事件機制,沒有實質的通信功能。方案二利用主進程做消息中轉此方案還是很好的。 菜鳥的 Electron 踩坑集錦。 對于 主進程和渲染進程之間的通信,使用 IPC 是很方便的。但是渲染進程之間呢? 哈哈,我這個碼農看來又踩到一個坑了。 方案一: 使用全局共享...

    trilever 評論0 收藏0

發表評論

0條評論

sihai

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<