繁体   English   中英

Node.js使用模块中的变量

[英]Node.js use variable from module

我有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;

如何使用列表作为全局变量?

只需在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设置为全局变量-而是模块系统一起使用,而没有全局污染的显式依赖项是模块系统的一大优势。

您需要传递List参数并在构造函数中访问...

new Entity(List);

constructor(List){
 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM