是否有可能覆盖 全局 require功能,从而在一定process程度上影响 全局 功能?
require
process
据我所知,该require函数在包装NodeJS脚本的函数中作为参数提供:
(function (..., require, __dirname) { // something like this // The wrapped code })(...);
有什么方法可以修改require功能吗?
(function () { var _require = require; require = function () { console.log("..."); _require.apply(this, arguments); }; })();
这可能只会影响脚本所在的脚本。
我们如何在流程级别进行修改?
var Module = require('module'); var originalRequire = Module.prototype.require; Module.prototype.require = function(){ //do your thing here return originalRequire.apply(this, arguments); };