希望你很好。节点js - 程序的整体结构
我需要你的帮助来理解如何在节点JS中逻辑地组织一个程序,以避免给定其异步属性(作为初学者..)重复代码。让我们举一个例子,让它更容易解释。 在mongo数据库中有一些数据(比如说名称列表)。名字的这个名单可以访问拜功能READDATA如下
function readData(criteriaRead,callback) {
mongodb.stuff(..)
callback('data read on mongodb')
}
我在我的节目两个动作:一个是打印出名字的名单,另一个是检查是否一个名字是在名单。 对于第一种情况,这很简单,我只是需要有一个像这样
function printout(data) {console.log(data)}
函数,要做到这一点
readData(criteriaRead,printout)
在第二种情况下,让我们说我有这样
功能checkIfInIt(array,dataToCheck) {//stuff to check console.log(results)}
现在,我有一个问题,因为如果我这样做readData(criteriaRead,checkIfInIt)
为checkIfInIt需要两个参数,它不会工作。 我需要这样的
function readDataBis(criteriaRead,dataToCheck,callback) {
mongodb.stuff(..)
callback('data read on Mongodb','dataToCheck')
}
一个函数,然后readDataBis(criteriaRead,dataToCheck,checkIfInIt)
的工作,但我有我的代码一个巨大的重复。
如何避免这种情况?
那么,你的第二个解决方案是完美的我的情况 - 尤其是因为我可以保持我的所有数据跨越d不同的回调。这太棒了,非常感谢 –
我在晚上想到了这个。有可能对回调函数做同样的事情吗? –
做同样的事情吗? –