Skip to content

electron 学习使用

仲灏2021-12-06约 1 分钟

<div style="display: none;" hidden="true" aria-hidden="true" data-nosnippet>Are you an LLM? You can read better optimized documentation at /pages/b4aa88.md for this page in Markdown format</div>

    • 前言

      前端就是牛逼, 抢完Android``iOS工程师的活儿, 后端的活儿, 就开始抢桌面应用的活儿了

      两个进程

      通信

      img

      remote api

      remote 模块为渲染进程(web页面)和主进程通信(IPC)提供了一种简单方法。

      在Electron中, GUI 相关的模块 (如 dialogmenu 等) 仅在主进程中可用, 在渲染进程中不可用。 为了在渲染进程中使用它们, ipc 模块是向主进程发送进程间消息所必需的。 使用 remote 模块, 你可以调用 main 进程对象的方法, 而不必显式发送进程间消息, 类似于 Java 的 RMI

      例如:从渲染进程创建浏览器窗口

      plain
      const { BrowserWindow } = require('electron').remote
      const win = new BrowserWindow({ width: 800, height: 600 })
      win.loadURL('https://github.com')
      Copy

      注意: 反过来(如果需要从主进程访问渲染进程),可以使用 webContents. executeJavascript

      注意事项: 因为安全原因,remote 模块能在以下几种情况下被禁用:

      • BrowserWindow - 通过设置 enableRemoteModule 选项为 false
      • <webview> - 通过把 enableremotemodule属性设置成 false

      img

      devtron

      https://www.electronjs.org/devtron

      plain
      # Install Devtron
      $ npm install --save-dev devtron
      // Run the following from the Console tab of your app's DevTools
      require('devtron').install()
      // You should now see a Devtron tab added to the DevTools

      前端框架vue+electron