我这个代码:节点JS:得到错误“监听器必须是一个函数”
function myfunction(url_parts){
fs.unlink(__dirname + '/temp/' + url_parts + '.pdf', function(err){
if (err) console.log(err);
console.log('unlink ok');
});
}
var url_parts= 'filename'
req.on("close", myfunction(url_parts));
我得到错误“监听器必须是一个函数”。但是我的功能是一个功能:D有什么问题? 我没有得到这个错误,如果我没有通过任何参数 myfunction,但我需要通过url_parts。 我不能使用匿名函数,因为我需要在代码的另一部分调用removeListener方法。
req.removeListener('close', myfunction);
尝试'req.removeAllListeners('close');'。 – 2014-11-14 12:31:00
不,错误在这里 - > req.on(“close”,myfunction(url_parts)); – Radar155 2014-11-14 12:35:21
如果'req'是'EventEmitter'的扩展,那么你可以在那里使用匿名函数并使用'req.removeAllListeners('close');'来移除监听器。 – 2014-11-14 12:36:32