Я пытаюсь создать сценарий, в котором при запуске определенного события я хотел, чтобы несколько слушателей выполнили какую-то задачу. Пытаясь также управлять кодом S.R.P, я хочу, чтобы слушатели находились в другом исходном файле. Я хочу знать, возможно ли это с помощью события Emitter. Является ли событие эмиттером только для одного исходного файла?node.js прослушиватель событий в другом исходном файле
var events = require('events');
var em = new events.EventEmitter();
exports.saveScheme = function (req, res) {
var dal = dalFactory.createDAL(constants.SCHEME);
return new Promise.resolve(dal.PromiseSave(req.body))
.then(function(data){
var schemeId = data._id;
em.addListener('FirstEvent', function (data) {
console.log('First subscriber: ' + data);
});
em.emit('FirstEvent', 'Test event emitter');
}).catch(function(error){
console.log(error);
});
};
Мой другой исходный файл
var emitter = require('events').EventEmitter;
var em = new emitter();
//Subscribe FirstEvent
em.on('FirstEvent', function (data) {
console.log('First subscriber: ' + data);
});
Благодаря тонну для понимания , –
Привет, Гилад, я попробовал пример 2, я создал 2 файла js без какой-либо логики, просто сделал и em.emit и сделал export.emitter. Во втором файле я не внес никаких изменений. Не удалось вызвать консоль log второго файла. Любая идея о том, что мне не хватало –
Не могли бы вы прикрепить свой код кстати (как комментарий или новый вопрос)? –