首页 > 解决方案 > 是什么使渲染器进程上的 require 方法未定义?

问题描述

渲染器进程仍然抛出错误

Uncaught ReferenceError: require is not defined
    at <anonymous>:1:1

即使主进程'webPreferences.nodeIntegration已经设置为true这样:

function launchMainWindow () {

  const mainWindow = new BrowserWindow({
    width: 800,
    height: 600,
    webPreferences: {
      nodeIntegration: true
    }
  })

  mainWindow.loadFile('main.html')
}

这与类似问题的答案相矛盾。我错过了什么?

是什么使require()渲染器进程上的方法未定义?

警告

标签: electron

解决方案


到目前为止,您必须使用最新的 Electron 版本。

在最新版本的 Electron 中,您需要同时指定:

webPreferences: {
    nodeIntegration: true,
    contextIsolation: false
}

您应该将此添加到您创建的所有 Windows 以允许使用 require。

来源:ElectronJS


推荐阅读