我试图弄清楚如何拦截所有Node的EXISTS
调用,以便我可以记录它们。
已经有一些问题,但是那里建议的方法无法拦截我的 all 要求调用,即我想深入拦截要求的调用,还有那些在我所需的模块及其所需的模块等内部。
到目前为止,我已经尝试了以下3种方法:
$('#grid1').on( "click", "td:not(:nth-child(2))", function (e) {
var rowIdx = table.row( this ).index();
var sData = table.cells({ row: rowIdx, column: 5 }).data()[0];
if (sData && sData.length) {
location.href = './test.php?id=' + sData;
}
});
require
const _req = require;
global.require = function () {
console.log ( 'require', arguments );
return _req.apply ( this, arguments );
};
但是他们都没有为我工作。
我在Electron v5中运行的Node.js v12下。
答案 0 :(得分:0)
要实现这样的目标(Intercept all require calls
),很可能需要包装Module.prototype.require
。
Module.prototype.require = wrapWithYOURInterceptor(params);
您可以在各种“拦截” require
库中完成此操作,如您所见:
intercept-require:https://github.com/bttmly/intercept-require/blob/master/lib/index.js
require-hook:https://bitbucket.org/ralphv/require-hook/src/master/lib/requireHook.js
您也可以只使用这些库,而不必使用新的库等。