在NodeJS项目中,文件夹./node_modules
保留所有项目模块和依赖项。
我的项目有一些库,如dbConnect.js
,utils.js
,messages.js
,constants.js
等...它们不是可以在在线存储库中找到的公共库。我专门为这个项目写了它们。所以我将它们存储在 ./ lib :
My project/
/node_modules
express
cheriio
<lot of modules folders installed with npm>
/lib
dbConnect.js
utils.js
messages.js
constants.js
common.js
<other project .js files>
这些库可能会使用./node_modules
中的某些模块。
要加载我使用的模块:
const CHEERIO = require('cheerio');
const UTILS = require('../lib/common.js');
const COMMON = require('./lib/utils.js');
问题是UTILS
,COMMON
可能找不到,具体取决于所需的顺序:
错误:找不到模块&#39; ../ lib / common.js&#39;
我已尝试../lib/common.js
,./lib/common.js
./common.js
我的问题是,如何正确存储项目自己的库,以便正确加载它们?它们应该存储在项目根文件夹中吗?
答案 0 :(得分:0)
您可以将文件存储为符合逻辑的文件。就像你可能希望将所有api controlars放在一个文件夹中,你的数据库连接和查询放在一个文件夹中,服务放在一个文件夹中。它完全取决于你。您只需使用从需要文件的位置到文件所在位置的相对路径。例如,如果您需要来自同一文件夹的文件,则“./file_name”应该没问题。但是如果你想在一个目录中包含一个文件,那么你必须使用'../filename'作为require里面的路径。