electron应用提示require() is not defined解决方法

2019-05-11 20:51:00
electron
原创
9836

创建了一个简单的electron应用,但窗口界面有些功能并未生效,在开发者工具里看了下,发现js文件里提示“require() is not defined”。感到疑惑,electron不是可以在html文件中直接执行node代码吗?

网上搜了下,最终找到了解决方案,这里记录一下:

很简单,在创建应用窗口时,设置webPreferences的nodeIntegration: true,即完整支持node。(但我记得这个属性的默认值就是true吧~)。

app.on('ready', () => {
  mainWindow = new BrowserWindow({webPreferences: {
        nodeIntegration: true
      }});
  mainWindow.loadURL(`file://${app.getAppPath()}/index.html`);
  mainWindow.on('closed', () => { mainWindow = null; });
});

再重启下应用,问题解决。

版权声明

版权声明:本站原创文章,转载请注明作者和出处。

本站点采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议  

发表评论
评论通过审核后显示。
热门文章
近期留言

2021-09-14

不错

幽默2021-09-13

赞一个!

溪门飞雪博客2021-07-01

学习了,很好,不过,我想问,如何能禁止win10自动更新?我记得当初收到电

6662021-06-18

66666666太厉害了

改回1.0.0版本2021-05-09

npm install lunr@1.0.0