内容目录
如题,这个官方问题里面已经写了解决方案,我只是记录一下方便整理
我在 Electron 中无法使用 jQuery、RequireJS、Meteor、AngularJS。
因为 Electron 在运行环境中引入了 Node.js,所以在 DOM 中有一些额外的变量,比如 module
、exports
和 require
。 这导致 了许多库不能正常运行,因为它们也需要将同名的变量加入运行环境中。
我们可以通过禁用 Node.js 来解决这个问题,在Electron里用如下的方式:
// 在主进程中.
const { BrowserWindow } = require('electron')
const win = new BrowserWindow(format@@
webPreferences: {
nodeIntegration: false
}
})
win.show()
假如你依然需要使用 Node.js 和 Electron 提供的 API,你需要在引入那些库之前将这些变量重命名,比如:
<head>
<script>
window.nodeRequire = require;
delete window.require;
delete window.exports;
delete window.module;
</script>
<script type="text/javascript" src="jquery.js"></script>
</head>