nodejs的良好依赖注入模块

时间:2014-12-10 16:05:28

标签: node.js

我正在寻找一个好的nodejs依赖注入模块, 我实现了一个特殊的记录器模块,我希望能够获得记录器的实例,无论我在文件夹层次结构中的位置。 我不能简单地使用requirejs,因为使用requirejs我需要模块的完整相对路径。 有标准的合适解决方案吗?

2 个答案:

答案 0 :(得分:1)

我仍然建议您使用require()方式,因为它是node.js原生的

但是,如果您不想用相对路径打扰自己 - 您的模块应该位于项目内的node_modules文件夹中。为此,您可以通过npm安装它。

但在安装之前,你应该将它发布到某个地方。

我建议你把它作为一种做法:

  1. 为您的模块创建存储库(公共github或私有存储库bitbucket

  2. 为您的模块创建一个package.json文件。这是一个例子:

    {
        "name": "your-module",
        "private": true,
        "repository": {
            "type": "git",
            "url": "git@bitbucket.org:username/your-module.git"
        },
        "main": "index.js",
        "version": "1.0.0",
        "dependencies": {
        }
    }
    
  3. 将此模块的依赖项添加到您的主package.json

    "your-module": "git+ssh://git@bitbucket.org:username/your-module.git#1.1.0",
    
  4. 运行npm install

  5. 利润

答案 1 :(得分:1)

我还建议遵循Node.js惯例。

可以使用dirnamefilenamelocation of the current file存储在主文件中(假设位于项目的根目录中)。然后,将其存储在global variable中,即可在应用中随处访问。我发现它很脏。

相关问题