簡體   English   中英

Node.js模塊無法通信

[英]Node.js module not communicating

我正在通過構建個人項目來自學node.js。 我試圖通過將代碼拆分為單獨的模塊來遵循最佳實踐。 但是,我遇到了一個問題,其中我的一個模塊正在與調用方模塊通信。 我已經使用了回調函數和事件,但是調用者模塊從不從被調用模塊獲取任何東西,除非被調用模塊立即返回一個值。 請查看下面的代碼,讓我知道我所缺少的內容:

blogs.controller.js(調用方模塊)

var ImageParser = require('../../components/parsers/ImageParser.js');
.....
var imageParser = new ImageParser();
imageParser.on('imagesParsed', function(){
console.log('test)});

ImageParser.js(稱為模塊)

var EventEmitter = require('events').EventEmitter;
var util = require('util');

var ImageParser = function(){
    this.emit('imagesParsed');
};

util.inherits(ImageParser, EventEmitter);

module.exports = ImageParser;

在ImageParser函數中,我可以監聽事件,但是在事件之外,我不能監聽。 任何幫助將不勝感激。

謝謝

我實際上在另一個問題的答案中找到了答案,答案由@ linus-g-thiel回答此外,感謝@Pointy

原來,我需要從方法而不是構造函數發出事件,並且偵聽器需要在方法調用之前。 現在正在工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM