在一个.js文件中我有
window.functionName = function(){
}
现在我想调用主电子文件中的函数。我怎么能这样做?
以下是我在主电子文件中尝试做的事情:
const electron = require('electron');
const BrowserWindow = electron.BrowserWindow;
var focusedWindow = BrowserWindow.getFocusedWindow();
focusedWindow.functionName();
它不起作用。为什么呢?
答案 0 :(得分:1)
getFocusedWindow
返回BrowserWindow
个对象。 BrowserWindow
是电子的窗口对象,而不是实际浏览器的全局上下文 - 因此,没有window.
全局对象自动在BrowserWindow中公开。您可能需要的是通过webContents
获取focusedWindow.webContents
,然后让渲染器进程通过executeJavaScript
方法执行您的javascript。主进程和渲染进程(browserWindow)是独立的进程,因此您无法立即调用函数,但必须要求它。