渲染进程中使用require报错的问题

最近在视频学习Electron.js的相关内容,发现在渲染进程中通过require引入js文件会提示require is not defined 的错误




 

报错截图:

 

报错原因: 

原因是因为官方在v5.0.0版本中将 nodeIntegration 的默认值改为了false,只需要在主进程中 BrowserWindow的nodeIntegration 改成false即可

官方描述:

渲染进程中使用require报错的问题_第1张图片

 

解决方案:

win = new BrowserWindow({
        width: 1000,
        height: 800,
        movable: true, 
        resizable: true,
        webPreferences: {    
            nodeIntegration: true  //此处改为true
        }
    });

 

PS:

 虽然解决了require的问题,但是还有一事不明,官方在文档中申明将nodeIntegration的默认值改为false是为了安全性考虑。那如果仅仅是将全局的node支持打开的话,会不会有其他的安全隐患?

 

你可能感兴趣的:(渲染进程中使用require报错的问题)