如何在node.js(express.js)中创build自定义事件侦听器?
我有一个巨大的function,嵌套的callback很多。 我想使它更清洁,更容易处理。 所以,我正在考虑使用自定义事件侦听器
就像一个函数完成的时候,在callback中,不是放置一大块代码,而是发出一个事件,然后监听器就会运行。
那么,如何在node.js中做到这一点? 我仍然在寻找一个很好的例子来指导我。
你可能想创build一个EventEmitter对象,并调用emit()
。
你可以设置这样的事件
app.on('event:user_created', callback);
然后你可以发射它们
app.emit('event:user_created', data);
express.js使用EventEmitter
。
我刚刚遇到了这个问题,我想打我2分钱,专门回应路易斯。
在Express中,如果您希望“应用”实例监听自定义事件,则可以执行以下操作:
app.on('testEvent', function () { return console.log('responded to testEvent'); }); app.get('/test', function (req, res) { app.emit('testEvent'); return res.status(200).end(); });
然后,当这条路线被击中,你会看到控制台中的响应。 当然你可以按照你的意愿来实现。