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

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

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

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

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

热门文章
近期留言

电脑没声音的求助者2019-11-12

这个回答得对,我也是通过你的方法操作,然后电脑就有声音了,高手高手啊

环氧地坪施工2019-10-23

了解了,哈哈哈,谢谢

安贝乐育婴网2019-10-12

讲得很清晰呢

repostone2019-10-10

博主怎么想到要关一个output呢。https://repostone.home.blog/

noOne2019-09-24

遇到同样的问题了……T.T 纠结了好久。。。