【发布时间】:2015-03-12 22:52:18
【问题描述】:
是否可以覆盖 global 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);
};
})();
这可能只会影响它所在的脚本。
我们如何在流程级别对其进行修改?
【问题讨论】:
-
看来 6to5 为其require hook 做了一些类似的事情。
-
您可以尝试在主文件中覆盖
global.require。global.require = function(){}. -
我很想知道为什么?
-
@mscdex 我期待这个问题。 :-) 我稍后会告诉你。
-
不,节点中的要求是特定于模块的,这是不可能的。
标签: javascript node.js require