我的项目文件夹下有一个文件路径,经常被其他模块使用。目前我必须写这样的东西:
mod1 = require('../lib/mod1');
mod2 = require('./lib/modules/mod2');
mod3 = require('../../../lib/modules/mod3');
我可以以某种方式挂钩require调用,用正确的路径替换返回的结果。我正在努力实现这个目标:
mod1 = require('lib/mod1');
mod2 = require('lib/modules/mod2');
mod3 = require('lib/modules/mod3');
这样lib
从我项目的任何目录中的任何模块解析为完整路径lib文件夹。
答案 0 :(得分:1)
最简单的方法是根据您的需要包装require函数。
global.myRequire= function(path) {
return require(__dirname + '/' + path);
};
在所有必需模块之前,在主app.js中添加上面的代码块。
所以你可以像这样调用模块var myModule = myRequire('lib/mod1');
。