javascript - Electron JS-无法解构 'BrowserWindow'的 'require(…).remote'属性,因为它未定义

标签 javascript node.js electron

,这是在渲染器过程中:


const {BrowserWindow} = require('electron').remote

const path = require('path')
const url = require('url')

const newWindowButton = document.getElementById('new-window-btn');
newWindowButton.addEventListener('click',(e)=>{
    let win3 = new BrowserWindow();
    win3.loadURL(url.format({
        pathname: path.join(__dirname,'index3.html'),
        protocol: "file",
        slashes: true
    }))

})
我无法在渲染器进程中打开新窗口,出现以下错误。
**未捕获到的TypeError:无法按原样分解'require(...)。remote'的属性'BrowserWindow'
undefined.**
    at Object.<anonymous> (D:\ElectronTute\helloWorld\index1.js:4)
    at Object.<anonymous> (D:\ElectronTute\helloWorld\index1.js:21)
    at Module._compile (internal/modules/cjs/loader.js:1145)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js`enter code here`:1166)
    at Module.load (internal/modules/cjs/loader.js:981)
    at Module._load (internal/modules/cjs/loader.js:881)
    at Function.Module._load (electron/js2c/asar.js:769)
    at Module.require (internal/modules/cjs/loader.js:1023)
    at require (internal/modules/cjs/helpers.js:77)
    at index1.html:13

最佳答案

 mainWindow = new BrowserWindow({
    width: 1280,
    height: 960,
    webPreferences: {
      nodeIntegration: true,
      enableRemoteModule: true,
     },
  });
我相信您正在使用新版本的Electron。从v9版本开始,除非将remote设置为true,否则不允许在渲染器上使用enableRemoteModule
另外,为了通过使用node_moduels在渲染器上加载require(),我们还需要同时启用nodeIntegration。根据需要是 Node API之一。
https://github.com/electron/electron/issues/21408

关于javascript - Electron JS-无法解构 'BrowserWindow'的 'require(…).remote'属性,因为它未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65877497/

相关文章:

javascript - react 类型错误: undefined onSubmit

javascript - 在 Electron 中更改 BrowserWindow 的系统 z 顺序,可能吗?

macos - 如何在 OSX 中为选定的文本注册右键菜单?

javascript - 如何使用 Javascript 将 &lt;/script&gt; 打印为文本

javascript - 检查两个数组中有多少个变量相同

javascript - 经典 ASP : VBScript to Javascript

javascript - 如何获取打包的 Electron 应用程序错误的完整日志?

node.js - Mongoose /MongoDB : Get second to last document

javascript - 如何分别制作DBconnection和Node.js查询文件

node.js - 将图像附加到现有 PDF 的正确位置