在JakeJS中完成任务之前和之后是否有任何事件需要运行?

我试图在JakeJS完成一个任务之前和之后运行一些东西,我不知道该怎么做。

目前,我需要把这个function附加到每个这样的任务上,而且很繁琐。

var complete = function() { // Do something when a task is completed } task("someTask", function() { // Do something }) .addListener("complete", complete) task("anotherTask", function() { // Do something }) .addListener("complete", complete) 

我可以用另一个函数来包装任务,但这只是一个丑陋的黑客,所以我不知道我是否可以做这样的事情。

 jake.addListener("afterTaskCompleted", function() { // Do something when a task is completed }) 

杰克有一个开始的事件,所以我做了迭代收集,并检查是否是一个任务 ; 如果是,那么我已经把处理程序附加到完成的事件。

 jake.addListener("start", function (e) { _.forOwn(jake.Task, function(task, name) { if (task.name && task.prereqs && name !== "__root__") { task.addListener("complete", function() { console.log() }) } }) }) 

ps我正在使用lodash遍历集合。