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

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

创建了一个简单的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 国际许可协议  

发表评论
评论通过审核后显示。
关注【程序员专区】

扫一扫,分享更多技术干货

热门文章
近期留言

前端博客 mybj123.com2020-06-03

写的不错,这回懂得了

test2020-05-18

谢谢

tbb2020-05-09

学到东西了,谢谢

前端小白2020-04-10

这是我见过讲解最好的,非常感谢您

BOB2020-04-01