在我的电子应用程序中,我正在设置webview。这是index.html的一个片段:
<webview
class="hide"
preload="./preload.js"
nodeintegration
></webview>
<script>
require('./renderer.js');
</script>
在main.js中,我为BrowserWindow设置了nodeIntegration:false
,但是应用程序没有启动,因为我在webview的控制台中收到此错误:
Uncaught ReferenceError: require is not defined
如果我从main.js中删除nodeIntegration:false
,它可以正常工作,但我不想公开节点API。
(P.S。:webview指向的远程网络应用程序正在使用jQuery。可能是冲突?)
答案 0 :(得分:1)
如果您删除了nodeIntegration : false
之类的require
命令,那么
看起来你有两种可能性:
让nodeIntegration: false
处理它
调用您的js文件,就像您在浏览器中一样:<script src="pathToFile"></script>
https://electronjs.org/docs/faq#i-can-not-use-jqueryrequirejsmeteorangularjs-in-electron这里他们解释了真正的nodeIntegration