zoukankan      html  css  js  c++  java
  • Electron13之remote模块使用

    目前最新的 Electron 正式版本是 13.x.x,这次 Electron 本身提供的新能力比较少,但 Node 升级到了 14.16.0,并且 v8 升级到了 9.1。本文主要介绍electron13版本使用remote模块实现渲染进程读取主进程变量的方法。

    Electron13正式禁用了Remote模块,使用一个新的包 @electron/remote 来替代。@electron/remote 是Electron内置remote模块的替代方案,它将JavaScript对象从主进程连接到渲染器进程,方便我们在渲染器进程中访问主进程的对象。直接按照这个包的说明使用会报错,正确的使用方式如下:

    安装@electron/remote

    项目根目录,执行如下命令

    npm install --save @electron/remote
    

    主进程引入并初始化,然后声明全局变量

    // 初始化
    require('@electron/remote/main').initialize()
    //全局变量
    global.shareObject = {
      isDev: isDev,
      currentVersion: currentVersion,
    };
    

    渲染进程获取数据

    // 获取主进程全局变量
    const shareObject = window.require('@electron/remote').getGlobal("shareObject")
    const isDev = shareObject.isDev
    const currentVersion = shareObject.currentVersion; 
    // 获取主进程窗口
    const { BrowserWindow } = window.require('@electron/remote')
    //获取主进程app
    const app = window.require('@electron/remote').app
    const version = app.getVersion();
    

    注意@electron/remote包有坑,不是非常完善,其中之一就是必须使用window.require引入,不能直接使用require,否则会报错

    其他

    其他api可参考@electron/remote

  • 相关阅读:
    Xcode 8.2 想使用插件 怎么办? 教你科学的使用插件
    JSAPI_Ticket签名
    Java中HashMap,LinkedHashMap,TreeMap的区别[转]
    微信支付开发,再次签名,APP调用
    微信支付开发,统一下单
    android studio安装插件
    java实现mysql数据库的备份及还原
    java项目中读取src目录下的文件
    eclipse增加浏览器chrome
    cd 命令
  • 原文地址:https://www.cnblogs.com/axl234/p/15206270.html
Copyright © 2011-2022 走看看