我正在尝试通过从主进程启动的HTTP服务器上提供HTML和渲染器javascript文件来制作我的Electron应用程序的移动版本。
我的渲染器进程javascript大量使用require。它们在Electron内部工作正常。在Electron之外,它们不是因为window.require
没有被定义。
所以我尝试重写一些代码,以便它可以使用required
或以前加载到<script>
标记中的模块。
这是我到目前为止所尝试的内容:
// Initial situation:
const $ = require('jQuery');
// on mobile : require is not defined
// Try 1
if (window.require) {
const $ = require('jQuery');
}
// doesn't work: $ is only defined in the scope of the if
// Try 2
let $;
if (window.require) {
$ = require('jQuery');
}
// on mobile : $ was defined from jQuery being loaded from a script tag,
// but I just overwrote it with undefined
// Try 3
let $;
if (window.require) {
$ = require('jQuery');
}
else {
$ = window.$;
}
// on mobile : window.$ is undefined
有人能看到我错过的东西吗?或者也许只是告诉我如何在非电子页面上设置require
?
答案 0 :(得分:0)
我最终做了以下事情:
if (window.require) {
window.$ = require('jQuery');
}
然后在整个渲染器过程中使用window.$
而不是$
。