我有3个不同的javascript文件,其中最小的一个发射事件,同时第二个(更大的)文件拾取事件并将其进一步发送到主文件。 这是我到目前为止已经试过:其他模块中的节点事件发射器
//mini.js
var EventEmitter = require('events').EventEmitter;
var ee = new EventEmitter;
console.log("Emitting event");
var message = "Hello world";
ee.emit('testing',message);
//second.js
var mini = require('./mini.js');
var EventEmitter = require('events').EventEmitter;
var ee = new EventEmitter;
mini.on('testing',function(message){
console.log("Second file received a message:",message);
console.log("Passing further");
ee.emit('testing',message);
});
//main.js
var sec = require('./second.js');
sec.on('testing',function(message){
console.log("Main file received the message",message);
});
然而,执行与节点的文件时,我得到
mini.on('testing',function(message){
^
TypeError: undefined is not a function
错误。
我在这里做错了什么? 谢谢
@NedasMikoleika在这种情况下,将** second.js **重命名为** main.js **,就是这样或者我在这里错过了一些东西? – Ismail
我实际上在** main.js **文件中包含了其他所有内容(我的服务器的其余部分)。 – Nedas
@NedasMikoleika没问题,只需将** second.js **的内容添加到您的** main.js **文件中即可。 – Ismail