1

在一个 .js 文件中,我有

window.functionName = function(){

}

现在我想调用主电子文件中的函数。我怎样才能做到这一点?

这是我在主电子文件中尝试做的事情:

const electron = require('electron');
const BrowserWindow = electron.BrowserWindow; 
var focusedWindow = BrowserWindow.getFocusedWindow();
focusedWindow.functionName();

这没用。为什么?

4

1 回答 1

1

getFocusedWindow返回BrowserWindow对象。BrowserWindow是电子的窗口对象,而不是实际浏览器的全局上下文 - 所以没有一个window.全局对象会自动暴露在 BrowserWindow 中。您可能需要的是webContents通过focusedWindow.webContents然后要求渲染器进程通过executeJavaScript方法执行您的 javascript。主进程和渲染进程(browserWindow)是独立的进程,所以你不能直接调用函数,而必须询问它。

于 2017-12-11T18:31:03.543 回答