有人可以解释一下下面的代码为什么不起作用的原因:

我有一个EventManager类:

const events        = require('events')

class EventManager extends events.EventEmitter {
    constructor() { super() }
}

const instance = new EventManager()

module.exports = instance


我有一个需要该EventManager的init.js文件,并注册了以下事件:

const EventManager = require('./EventManager')
const processTask  = require('./processTask')

EventManager.on('startTask', (task) => {
    processTask(task)
})

EventManager.on('endTask', (task) => {
    //some code
})

const someTask = {}
EventManager.emit('startTask', someTask)


在我的processTask函数中,我调用EventManager并发出endTask事件:

// processTask.js
const EventManager  = require('../lib/EventManager')
module.exports = (task) => {

  // some code

  EventManager.emit('endTask')
}


但是endTask从未发出,为什么?

最佳答案

//这是一些代码中的问题。 @Bergi和@poeticGeek。

09-16 19:40