我是靠谱客的博主 魔幻蛋挞,这篇文章主要介绍node.js 加载文件钩子,现在分享给大家,希望可以做个参考。

const { existsSync } = require("fs")
var Module = require("module")
const path = require("path")
var rootDir = getPackageRoot();
var _require = Module.prototype.load
var dept = 0
Module.prototype.load = function () {
    dept++
    var relativePath = path.relative(rootDir, arguments[0]);
    if (!relativePath.startsWith("node_modules") || process.env.includeModule)
        console.log(" ".repeat(dept) + dept + ":" + relativePath);
    var mod = _require.apply(this, arguments)
    dept--
    return mod;
}


function getPackageRoot(params) {
    var mod = require.main;
    var mainModulePath = mod.paths.find(v => {
        return existsSync(path.join(v, "../package.json"))
    })
    return path.join(mainModulePath, "../")
}

最后

以上就是魔幻蛋挞最近收集整理的关于node.js 加载文件钩子的全部内容,更多相关node.js内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(134)

评论列表共有 0 条评论

立即
投稿
返回
顶部