gpt4 book ai didi

javascript - Node.js 使用模块中的变量

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

我有app.js

var List = {};
var Entity = require('./entity.js');
var main = new Entity(); // should be changed List
console.log(List) // still empty

entity.js

class Entity {
constructor(){
this.id = Math.random();
List[this.id] = this; // List == undefined
}
}
module.exports = Entity;

如何使用 List 作为全局变量?

最佳答案

只需在 entity.js 中导入 List 即可:

app.js 末尾:

module.exports = List;

在entity.js的开头:

const List = require('./app.js');

如果您的 app.js 还需要导出其他内容,请改为导出具有 List 属性的对象:

app.js 末尾:

module.exports.List = List;

在entity.js的开头:

const List = require('./app.js').List;

您还可以考虑将 List 放入其自己的模块中,app.jsentity.js 都导入。

不要将 List 设置为全局变量,如果可能的话 - 与模块系统一起工作,没有全局污染的显式依赖是模块系统的一大优势优点。

关于javascript - Node.js 使用模块中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54879247/

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