我正在尝试构建一个本地 JS 模块库以在 Node 项目中使用。
如果新项目位于 /Users/me/projects/path/to/new/project/
并且我的库文件位于 /Users/me/projects/library/*.js
有没有一种方法可以在不使用相对路径的情况下访问这些文件?
在 /Users/me/projects/path/to/new/project/app.js
中,您可以像这样需要 foo.js:
var foo = require('../../../../../library/foo')
这可以工作,但很笨重,如果文件移动你会必须更新您的相对路径。
我已经尝试过requireFrom和 app-module-path没有运气,因为它们与项目根相关。
关于如何从项目目录外部获取文件有什么想法吗?
提前致谢!
最佳答案
var librarypath = '/Users/me/projects/library/';
// or if you prefer...
// var librarypath = '../../../../../library/';
var foo = require(librarypath + 'foo.js');
...或者打扮得更漂亮一点...
function requirelib(lib){ return require('/Users/me/projects/library/'+lib+'.js'); }
var foo = requirelib('foo');
var bar = requirelib('bar');
关于javascript - 是否可以在没有相对路径的情况下从项目目录外部请求模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35929655/