【发布时间】:2017-05-10 09:41:05
【问题描述】:
我有这样的代码来发送事件:
process.emit('event', event);
我想像这样收听这些事件:
process.on('event', function(event) {
//HANDLING LOGIC
});
当文件位于同一文件夹中时,它可以正常工作。当我在其他文件夹中找到侦听器时,它不会被触发。 这可能是什么根本原因,我该如何处理?
编辑:
实际问题只是缺少包含事件处理的文件的公开。真丢人。
【问题讨论】:
-
你是如何加载这些文件的?
-
@robertklep 不确定您的意思?我认为(可能是错误的)每当我使用流程时,我也会加载事件模块,该模块在分发事件方面具有全局范围。我也用我自己的文件检查了这一点,该文件隐式暴露了 eventEmitter,但它也不起作用。
-
你写,“当我在其他文件夹中找到监听器时”,这意味着你正在以某种方式加载包含该监听器的文件。需要明确的是:事件发射器只能在同一个(Node)进程中工作,您不能在一个进程中发出并在另一个进程中接收这些事件。
-
@robertklep 您的问题帮助我解决了实际问题,谢谢!