nodejs事件被多次调用

时间:2014-10-08 12:44:05

标签: javascript node.js angularjs mongodb express

我一直在https://github.com/techunits/mopublish/tree/develop托管的nodejs上开发CMS。这里我添加了一些事件挂钩,例如

mpObj.emit('MP:FOOTER', '<center>MPTEST Plugin loaded successfully.</center>');

当我在以下地点处理此事件时:

mpObj.on("MP:FOOTER", function(str) {
                        console.log(str);
                        if(str) {
                            httpResponse.locals.siteFooter += str;
                        }
});

它在1页中被多次执行。模式如下:

  1. 如果首次加载页面,则会执行一次。
  2. 如果第二次加载页面,它将被执行两次。
  3. 如果页面被加载n次,它将被执行n次。
  4. 请告知。

1 个答案:

答案 0 :(得分:0)

我不知道你的CMS是如何工作的,但我想这个监听器已被多次注册。尝试在mpObj.off("MP:FOOTER");来电之前在CMS中添加mpObj.on()或相应的功能。