node.js - 良好的 Nodejs 依赖注入(inject)模块

标签 node.js

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

最佳答案

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

但是,如果您不想为相对路径烦恼 - 您的模块应该驻留在项目内的 node_modules 文件夹中。要实现此目的,您可以通过 npm 安装它。

但是在安装之前,当然,您应该将其发布到某个地方。

我建议您将此作为练习:

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

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

    {
        "name": "your-module",
        "private": true,
        "repository": {
            "type": "git",
            "url": "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="e0878994a08289948295838b8594ce8f9287" rel="noreferrer noopener nofollow">[email protected]</a>:username/your-module.git"
        },
        "main": "index.js",
        "version": "1.0.0",
        "dependencies": {
        }
    }
    
  3. 将此模块的依赖项添加到您的主 package.json 中,如下所示

    "your-module": "git+ssh://<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="99fef0edd9fbf0edfbecfaf2fcedb7f6ebfe" rel="noreferrer noopener nofollow">[email protected]</a>:username/your-module.git#1.1.0",
    
  4. 运行npm install

  5. 利润

关于node.js - 良好的 Nodejs 依赖注入(inject)模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27405562/

相关文章:

javascript - MongoDB Like Query(首字母或单词查找查询)

node.js - 我的 centos venet0 设置是否导致 url 在服务器上不起作用?

javascript - Node.js:使用 "@"-symbol 解析 json-ld/JSON

node.js - 如何在 Node.js 中列出所有 MongoDB 数据库?

html - 无法找到错误 "Warning: Task "uglify“未找到”的解决方案

javascript - 正文解析器 request.body 为空

javascript - sinon 没有正确恢复 stub 原型(prototype)方法?

node.js - 模拟 zip.js lib 以便能够使用 jest

javascript - 为什么 EnumPrintersA 和 EnumPrintersW 请求相同数量的内存?

javascript - 如何在 Node.js 中创建 Blob?