良好的nodejs注入模块
我正在寻找一个好的nodejsdependency injection模块,我实现了一个特殊的logging器模块,我希望能够获取logging器的实例,而不pipe我在文件夹层次结构中的位置。 我不能简单地使用requirejs,因为requirejs我需要模块的完整相对path。 有没有标准的合适解决scheme?
我仍然build议你使用require()
方法,因为它是node.js
的本地代码
但是,如果您不想打扰相对path,那么您的模块应驻留在项目中的node_modules
文件夹中。 为了达到这个目的,你可以通过npm
来安装它。
但是在安装之前,当然应该在某处发布它。
我build议你把这作为一种做法:
-
为你的模块创build一个仓库(公共的github或专用仓库的bitbucket )
-
为你的模块创build一个
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": { } }
-
添加一个依赖到这个模块到你的主
package.json
像这样"your-module": "git+ssh://git@bitbucket.org:username/your-module.git#1.1.0",
-
运行
npm install
- 利润
我也会推荐下面的Node.js约定。
可以使用dirname
或filename
来存储当前文件的位置 ,例如存储在主文件(假定位于项目的根目录)。 然后,将其存储在global
variables中将使其可以在您的应用程序的任何地方访问。 我觉得它很脏,但。