我在使用node,npm时遇到了一些问题,并试图找出包结构,而且我不太清楚Google的用途。在涉及如何导入npm包时,我一直试图找到一个通用的约定。
我最近在Node中编写了一个小型Web服务器,并且我一直在使用HttpDispatcher来帮助处理请求。当我尝试制作多个HttpDispatcher对象时会出现问题。'当我这样做时,它实际上并没有创建一个新的,而是继续使用我创建的第一个。
我对Javascript和Node一般都很陌生,但是我在过去遇到了一些问题,即在循环中创建匿名函数(我认为这是他们所称的)并非总是,如果有的话,按预期行事。因此,我真的很好奇如何使用具有多个实例的软件包?
我通过制作HttpDispatcher'对象来解决我的问题。全局(删除前面的 var 关键字。这实际上会按预期创建一个新对象。但我担心这不合适。
所以我问你: 声明/初始化/导出在npm包中声明的对象的正确方法是什么?我应该向我的问题提交一个拉取请求或建议吗?
非常感谢!
答案 0 :(得分:2)
你是对的,你应该联系HttpDispatcher模块的作者
在HttpDispatchermodule的末尾,而不是导出实例:
module.exports = new HttpDispatcher();
作者可以导出构造函数本身,然后您可以在消费者模块中创建所需数量的实例:
module.exports = HttpDispatcher;