2017-02-23 54 views
-1

如何在函数上应用挂钩。我想要在挂钩函数前后应用,以便每当调用该函数时,这些挂钩都会触发。我已经看到了中间件express.js的概念但这只适用于不适用于某个功能的路由,因为它适用于路由处理。我需要一个类似于我的函数的钩子,所以无论何时我的函数在钩子触发前后在服务器端调用。挂钩在node.js中的函数

function main(){ console.log("When ever this function is called as myfun()"); } 

function after(){ 
    console.log("called afer when ever manin is called"); 
} 
+1

你能举一个例子。为什么不简单地包装功能? –

+0

@DavinTryon Eidt举例 – Naqeeb

回答

0

您可以使用各种功能成分/链模式:

例子:

function chain() { 
    const fns = Array.prototype.slice.call(arguments); 

    return function (result) { 
    return fns.reduce((result, fn) => fn.call(this, result), result); 
    }; 
}; 

chained = chain(before, main, after); 
chained();