在哪里存储node.js项目自己的库?

时间:2017-01-14 17:22:18

标签: node.js

在NodeJS项目中,文件夹./node_modules保留所有项目模块和依赖项。

我的项目有一些库,如dbConnect.jsutils.jsmessages.jsconstants.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');

问题是UTILSCOMMON可能找不到,具体取决于所需的顺序

  

错误:找不到模块&#39; ../ lib / common.js&#39;

我已尝试../lib/common.js./lib/common.js ./common.js

我的问题是,如何正确存储项目自己的库,以便正确加载它们?它们应该存储在项目根文件夹中吗?

1 个答案:

答案 0 :(得分:0)

您可以将文件存储为符合逻辑的文件。就像你可能希望将所有api controlars放在一个文件夹中,你的数据库连接和查询放在一个文件夹中,服务放在一个文件夹中。它完全取决于你。您只需使用从需要文件的位置到文件所在位置的相对路径。例如,如果您需要来自同一文件夹的文件,则“./file_name”应该没问题。但是如果你想在一个目录中包含一个文件,那么你必须使用'../filename'作为require里面的路径。