NodeJs事件和制作算法

时间:2016-12-06 13:33:09

标签: node.js events

我需要编写一个命令行实用程序。根据用户的选择,实用程序将运行某种算法。算法必须是模块化的,并且由一组指定的任务组成。任务将以模块的形式实现,将通过事件模型链接。

下面的一个简单示例

// main.js
'use strict';
const EventEmitter = require('events');
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();

let _first = require('./first');
let _second = require('./second');
let map = new Map();

map.set('first', new _first(myEmitter));
map.set('second', new _second(myEmitter));

myEmitter.emit('start', 3);

// first.js
module.exports = function First(Emiter) {
    Emiter.on('start', (x) => {
      console.log('an event occurred! in First. get: ' + x++);
      Emiter.emit('next', x);
    });
}

// second.js
module.exports = function Second(Emiter) {
    Emiter.on('next', (x) => {
      console.log('an event occurred! in Second, get: ' + x);
    });
}

这是对的吗?在构造函数中是否有任何负面使用处理函数?

0 个答案:

没有答案