javascript - 何时使用 require 以及何时通过参数提供依赖项
问题描述
我一直想知道在 node.js 代码中注入依赖项的首选方式是什么。
我一直在做一个没有依赖注入的项目。这就是为什么我有两种方法在我的代码中提供依赖项的原因:
通过构造函数/函数参数 - 这具有爆炸函数中参数数量的缺点,因为我将参数从程序的较高级别传递到较低级别,
function createListener(queue) {
return function listen() {
while (true) {
const messages = queue.receiveMessages();
...
}
};
}
使用 require() - 这相当于硬编码那些依赖关系,如果更难模拟和测试。
const queue = require('./queue');
function createListener() {
return function listen() {
while (true) {
const messages = queue.receiveMessages();
...
}
};
}
我一直试图在它们之间找到一个甜蜜点。当提供一个复杂机制的依赖项时,我倾向于注入它,在处理我使用的值或不太重要的机制时需要。
那样行吗?什么是更好的方法?
解决方案
推荐阅读
- python - 替换并添加到python3中的数组切片
- matplotlib - 向 Shapefile 地图添加标签
- haskell-stack - 如何让堆栈看到依赖关系?
- php - PHP iconv 从 utf-8 到 windows-1252,没有特殊字符
- python - Pandas 在单个条形图上绘制多列
- excel - 将更新相同值列中的单元格的触发器
- python - 对于目录中的每个文件,使用 np.loadtxt?
- neo4j - 在 Neo4J 中导入数据库文件
- git - 如何在 git 中进行部分合并?
- javascript - 使用 vanilla JavaScript 的动态文本字符串中的上标美分