gpt4 book ai didi

javascript - 在 Electron 中要求和扩展类,怎么做?

转载 作者:行者123 更新时间:2023-12-01 16:14:35 25 4
gpt4 key购买 nike

我有一个文件 global.js 包含

var Global = (function () {
function Global() {
this.greeting = 'test';
}

Global.prototype.getList = function () {
return "Hello, " + this.greeting;
};
return Global;
})();

还有另一个文件“main.js”,它包含

var global= new Global();

console.log(global.getList);

然后我在 index.html 中需要它们

...
<script>
require('./npmMain.js');
require('./main.js');
</script>

我得到 Global is not defined

我怎样才能让这个类对 main.js 可用?

有什么想法吗?

编辑:如果我在 npmMain.jsconsole.log('test'); 我可以看到它在运行,所以需要文件,就是那个类不可用或什么的

最佳答案

欢迎来到模块世界!

首先,在您的 main.js 文件中,在顶部添加一行,如下所示:

var Global = require('./npmMain.js').Global;

然后在npmMain.js的末尾添加这样一行:

exports.Global = Global;

然后从 index.html 中删除该行。应该这样做。

我猜你对 CommonJS 风格的模块不熟悉。模块不共享全局变量。一切(除了 commonJS 实现提供的一些属性)都需要在使用之前被要求。另外,如果你想在模块之间公开值,你需要使用 exports 关键字。

CommonJS site 上有更详细的解释.

关于javascript - 在 Electron 中要求和扩展类,怎么做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31465781/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com