In the following snippet, lineReader
listens to an event line
. When a line
event is received, it calls da
on Parser
which returns a Promise
lineReader.on('line',(line) => {
Parser.da(line).then((info) => {
});
});
lineReader.on('close',() => {
req.end();
});
Parser.da = function(line) {
return new Promise((resolve,reject) => {
geo.getLocation().then((r) => {
console.log(r); return resolve(r);
});
});
}
da
function in return calls a function which also operates on Promise
. What happens is that I can never see the output from geo.getLocation
and readLine.on('close')
gets called.
What should be the way to handle this situation?