我有此应用程序文件夹结构:project root | +- controllers/ | +- models/ | +- node_modules/ | +- utils/ | +- tests/ | +- package.json
我在utils
文件夹中有一些共享功能,我想在models
,controllers
和tests
文件夹中的文件中使用这些功能。
我想引用utils
之类的var utils = require('utils');
模块,并将其存储在应用程序存储库中。
我不想写像var utils = require('../../utils');
这样的东西,这看起来很丑。我不想将utils
文件夹放入node_modules
,因为node_modules
存储由npm install
安装的第三方依赖项,并且不受版本控制,并且我不想混合私有代码和第三方代码。
有什么解决办法吗?
UPD:我知道的唯一方法是通过某种安装脚本在node_modules
文件夹中建立指向utils
文件夹的符号链接。还有其他想法吗?
最佳答案
您可以在环境中添加NODE_PATH
:
export NODE_PATH=`pwd`
如果您在
utils
目录的根目录中有一个index.js,它将找到utils