gpt4 book ai didi

Electron - ipcRenderer 错误 : Cannot read property 'send' of undefined

转载 作者:行者123 更新时间:2023-12-03 12:22:57 27 4
gpt4 key购买 nike

我有一个带有构造函数和异步函数的类。我已经完成了 module.exports 以便我可以从我的 GUI.js 文件和我的 GUI.js 文件中调用我的类,我需要该类,并且一切正常。

但是在我的类里面,我试图做这个 ipcRenderer.send('message', 'Hello');

我得到这个错误:

TypeError:无法读取未定义的属性“发送”

是否可以在我的 GUI.js 中远程控制 ipcRenderer?

谢谢。

我在我的主文件中需要该模块,并在我的渲染器文件中发送ipcRenderer.send('startMyClass');
在我的主文件中:

ipcMain.on('startMyClass', (event, args) => { const client = new myClass(); client.Start(); })

这是我的主文件中需要的 class/index.js 文件。
const request = require('request-promise');
const cheerio = require('cheerio');
const { ipcRenderer } = require('electron')

class myClass {
constructor() {
this._jar = request.jar();
this._request = request.defaults({ jar: this._jar });
}

async Start() {

await this.Test();


};

async Test() {
ipcRenderer.send('myMessage', 'Hello');
}

}


module.exports = myClass;

编辑:如果我不需要它,并且在我的主文件中有整个类,我可以做 event.sender.send('myMSG', 'hello');

但我想在我的类里面做这件事,这和我的主文件不在同一个文件中。

最佳答案

编写类如下:

class myClass {
constructor() {
if ((<any>window).require) {
try { ipc = (<any>window).require('electron').ipcRenderer; } catch (e) { throw e; }
}
else { console.warn('App not running inside Electron!'); }

this._jar = request.jar();
this._request = request.defaults({ jar: this._jar });
}
}

关于 Electron - ipcRenderer 错误 : Cannot read property 'send' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52819974/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com