nodejs 有时候需要打日志,做权限验证等工作,如果希望在不修改原有代码情况下,做这些工作,可以使用shimmer
https://www.npmjs.com/package/shimmer
var Calculator = require('./calculator');
var shimmer = require('shimmer');
shimmer.wrap(Calculator, 'add', function (original) {
return function () {
console.log("add start");
var returned = original.apply(this, arguments)
console.log("add end");
return returned;
};
});
Calculator.add(1,2)
calculator代码
function add(a,b){
var sum =a+b;
console.log("sumResult:"+sum);
return sum;
}
module.exports ={add}
输出结果
add start
3
add end