Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Can';电子中的t关闭窗口_Node.js_Electron - Fatal编程技术网

Node.js Can';电子中的t关闭窗口

Node.js Can';电子中的t关闭窗口,node.js,electron,Node.js,Electron,我的renderer.js中有以下代码: const ipcRenderer = require('electron').ipcRenderer; const remote = require('electron').remote; function sendForm(event) { event.preventDefault() // stop the form from submitting let code = document.getElementById("

我的renderer.js中有以下代码:

const ipcRenderer = require('electron').ipcRenderer;
const remote = require('electron').remote;

function sendForm(event) {
    event.preventDefault() // stop the form from submitting
    let code = document.getElementById("code").value;
    ipcRenderer.send('2FacLogin', {twoFactorCode: code});

    // TODO Close Window
    var window = remote.getCurrentWindow();
    window.close();
}
这是打开窗口的方式:

 const win = new BrowserWindow({
    width: 300,
    height: 300,
    webPreferences: {
        nodeIntegration: true,
        contextIsolation: false,
    }
  })

为什么窗口不关闭?

由于Electron 10.0.0默认情况下禁用了
远程
模块,因此在创建新的浏览器窗口时,必须通过向
webPreferences
对象添加
enableRemoteModule:true
来显式启用该模块

const win = new BrowserWindow({
    width: 300,
    height: 300,
    webPreferences: {
        nodeIntegration: true,
        contextIsolation: false,
        enableRemoteModule: true
    }
})
见:

顺便说一句,以下声明:

var window = remote.getCurrentWindow();
大多数情况下都会触发如下错误:

未捕获的TypeError:无法读取未定义的属性“getCurrentWindow”

你可以通过查看DevTools的控制台来发现自己