【Electron】【React】在jsx文件中使用electron的remote模块

前言:

remote模块很重要呀!

首先,安装@electron/remote依赖

cnpm install @electron/remote --save-dev

main.js中书写如下代码:

注意:必须要initializeenable

require('@electron/remote/main').initialize()
const path = require('path')
webPreferences:{
            devTools:true, //是否开启调试
            nodeIntegration: true,  //开启主进程和渲染进程之间的通信
            enableRemoteModule:true,
            preload:path.join(__dirname,'/preload.js'),
            contextIsolation: false,
            nodeIntegrationInSubFrames: true
        }
 require("@electron/remote/main").enable(mainWin.webContents)

main.js完整代码

const { app ,BrowserWindow } = require('electron')
require('@electron/remote/main').initialize()
const isDev = require('electron-is-dev')
const path = require('path')

function createWindow(){
    let mainWin = new BrowserWindow({
        height:680,
        width:1024,
        show:false,
        autoHideMenuBar:true,
        // frame:false,
        title:'芊芊静听',
        icon:path.join(__dirname,'/earphone.png'),
        webPreferences:{
            devTools:true, //是否开启调试
            nodeIntegration: true,  //开启主进程和渲染进程之间的通信
            enableRemoteModule:true,
            preload:path.join(__dirname,'/preload.js'),
            contextIsolation: false,
            nodeIntegrationInSubFrames: true
        }
    })

    require("@electron/remote/main").enable(mainWin.webContents)
    mainWin.loadURL(isDev ? 'http://localhost:3000' : 'dummyurl')
    mainWin.on('ready-to-show',()=>{
        mainWin.show()
    })
    mainWin.on('close',()=>{
        mainWin = null
    })

}

app.on('ready', () => {
    createWindow()
})

preload.js

window.electron = require('electron')
window.remote = require('@electron/remote')
console.log('electron injection fin...')

jsx文件对remote的使用

let remote = window.remote

在开发工具中打印remote,会输出一个对象

在这里插入图片描述
大功告成!

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值